DOKK Library

Open Source Yearbook 2015 v2

Authors opensource.com

License CC-BY-SA-4.0

Plaintext
Opensource.com/yearbook
                                                               ....................   OPENSOURCE.COM




         Opensource.com publishes stories about creating, adopting, and sharing
         open source solutions. Visit Opensource.com to learn more about how the
         open source way is improving technologies, education, business, government,
         health, law, entertainment, humanitarian efforts, and more.

         Submit a story idea: https://opensource.com/story

         Email us: open@opensource.com

         Chat with us in Freenode IRC: #opensource.com


                Twitter @opensourceway: https://twitter.com/opensourceway

                Google+: https://plus.google.com/+opensourceway

                Facebook: https://www.facebook.com/opensourceway

                Instagram: https://www.instagram.com/opensourceway




Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O
                                               pensource.com
..............
         .. .... .                     . . . . .
       .. .. .... A U T O G R A P H S . . .. .. .. . . . . . . .
..............
         .. ... . .                    . . . . .
       .. .. .... A U T O G R A P H S . . .. .. .. . . . . . . .
                             .  ........
                               ... .. ...
 O P E N S O U R C E . C O M .. .. .. ....
                                          . .
W R I T E      F O R         U S
                                      ..............   ..
                                             .............
     7 big reasons to contribute to Opensource.com:
             1    Career benefits: “I probably would not have gotten my most recent job if it had not been for my articles on
                  Opensource.com.”



             2     Raise awareness: “The platform and publicity that is available through Opensource.com is extremely
                   valuable.”



             3     Grow your network: “I met a lot of interesting people after that, boosted my blog stats immediately, and
                   even got some business offers!”



             4     Contribute back to open source communities: “Writing for Opensource.com has allowed me to give
                   back to a community of users and developers from whom I have truly benefited for many years.”



             5     Receive free, professional editing services: “The team helps me, through feedback, on improving my
                   writing skills.”



             6     We’re loveable: “I love the Opensource.com team. I have known some of them for years and they are
                   good people.”



             7     Writing for us is easy: “I couldn't have been more pleased with my writing experience.”


     Email us to learn more or to share your feedback about writing for us: https://opensource.com/story
     Visit our Participate page to more about joining in the Opensource.com community: https://opensource.com/participate
     Find our editorial team, moderators, authors, and readers on Freenode IRC at #opensource.com: https://opensource.com/irc




F O L L O W         U S
                             ..............   ..
                                    .............
             Twitter @opensourceway: https://twitter.com/opensourceway
             Google+: https://plus.google.com/+opensourceway
             Facebook: https://www.facebook.com/opensourceway
             Instagram: https://www.instagram.com/opensourceway
             IRC: # opensource.com on Freenode

     All lead images by Opensource.com or the author under CC BY-SA 4.0 unless otherwise noted.


                                                                           Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O
                                                                                                                          pensource.com
FROM THE
                                                         .  ........
                                                           ... .. ...
                                             E D I T O R .. .. .. ....
                                                                      . .
            Dear Open Source Yearbook reader,
            The “open source” label was created back in 1998, not long after I got my start in tech publishing [1].
            Fast forward to late 2014, when I was thinking about how much open source technologies, commu-
            nities, and business models have changed since 1998. I realized that there was no easy way—like a
            yearbook—to thumb through tech history to get a feel for open source.
               Sure, you can flip through the virtual pages of a Google search and read the “Best of” lists collected
            by a variety of technical publications and writers, much like you can thumb through newspapers from
            the 1980s to see how big we wore our shoulder pads, neon clothing, and hair back then. But neither
            research method is particularly efficient, nor do they provide snapshots that show diversity within
            communities and moments of time.
               The idea behind the Open Source Yearbook is to collaborate with open source communities to
            collect a diverse range of stories from the year. We let the writers pick the criteria, which means the
            yearbook isn’t just full of the fastest, most popular, smartest, or best looking open source solutions.
            Instead, the yearbook offers a mix of open source solutions and projects, from a range of writers and
            communities, to offer a well-rounded (albeit incomplete) glimpse at what open source communities
            and projects looked like in 2015.
               We couldn’t have put this yearbook together without contributions from the following writers:

              • Alicia Gibb, CEO of Lunchbox Electronics
              • Becky Stern, director of wearables at Adafruit
              • Ben Cotton, support engineer group leader at Cycle Computing
              • Ben Nuttall, education developer advocate for the Raspberry Pi Foundation
              • Christine Abernathy, Developer Advocate on the Open Source team at Facebook
              • Cindy Pallares-Quezada, an Outreachy alumni
              • David Both, Linux expert and enthusiast
              • Drishtie Patel, GIS Analyst and Missing Maps Project Coordinator at the American Red Cross
              • Harris Kenny, VP of Marketing at Aleph Objects
              • Italo Vignoli, founding member of The Document Foundation
              • Jeff Triplett, Frank Wiles, and Jacob Kaplan-Moss, Django contributors
              • Jesus M. Gonzalez-Barahona, co-founder of Bitergia
              • John Esposito, Editor-in-Chief at DZone
              • Jos Poortvliet, ownCloud community manager
              • Mano Marks, director of developer relations at Docker, Inc.
              • Michael E. Meyers, the VP of Developer Relations at Acquia
              • Robin Muilwijk, Internet and e-government advisor
              • Seth Kenlon, independent multimedia artist, free culture advocate, and UNIX geek

            Thank you to everyone who contributed to the 2015 Open Source Yearbook.

            Best regards,

            Rikki Endsley

            Opensource.com community manager

            If you’re interested in contributing to the 2016 Open Source Yearbook, email us at open@opensource.com
            or submit your story idea: https://opensource.com/story

            Links
            [1]	History of the OSI (Open Source Initiative): https://opensource.org/history



 Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O  pensource.com                                                        1
                .  ........
                  ... .. ...
C O N T E N T S .. .. .. ....
                             . .
W O R K I N G
                       ..............   ..
                              .............
        4 6 creative ways to use ownCloud
            Jos Poortvliet                                                 13       10 cool tools from the Docker community
                                                                                    Mano Marks
            Learn about six favorite uses for ownCloud, the open                    Check out 10 cool tools that can help expand your
            source self-hosted storage platform.                                    knowledge and use of Docker.

        6 6 useful LibreOffice extensions
            Italo Vignoli                                                  15       5 handy Drupal modules
                                                                                    Michael E. Meyers
            Extend the features in the already feature-packed                       Find out about five handy Drupal modules: Views,
            LibreOffice office suite with these six useful add-ons.                 BigPipe, Rules, Features, and Lightning.

        8 5 favorite open source Django packages
            Jeff Triplett, Jacob Kaplan-Moss, and Frank Wiles             17       Top 5 open source frameworks every
                                                                                    application developer should know
            Django contributors share their five favorite Django                    John Esposito
            packages in 2015: Cookiecutter, Whitenoise, Django                      The DZone editor in chief picks five open source
            REST Framework, Wagtail, and django-allauth.                            frameworks every application developer should know.

        11 Facebook’s top 5 open source projects of 2015 20
            Christine Abernathy
                                                                                    10 helpful tools for a sys admin’s toolbox
                                                                                    Ben Cotton
            We round up Facebook’s top five open source projects                    We highlight 10 sys admin tools that released new
            in 2015, measured by community activity and impact.                     versions in 2015.




            Best Couple
            Best Couple of 2015: tar and ssh
                                                                                                           DAVID BOTH


                    22        Picking one Best Couple for the yearbook was no easy task. We explain
                              why the 2015 honor goes to an odd couple: tar and ssh.



COLL ABORATING
                                   ..............   ..
                                          .............
     24 Top 10 open source projects of 2015
            Jen Wike Huger                                                29 Diversity in open source highlights from 2015
                                                                                 Cindy Pallares-Quezada
            Our editors flipped through our 2015 archives and                    Diversity efforts received more attention in 2015. We
            picked 10 open source projects that were popular                     round up a few of the highlights.
            with readers.
                                                                           31 2015 was a good year for creating the world’s

     26 Top 5 open source community metrics to track
            Jesus M. Gonzalez-Barahona
                                                                              ‘missing maps’ with OpenStreetMap
                                                                                 Drishtie Patel
            Which project community metrics should you be                        The Missing Maps project launched in 2014. Learn
            tracking? We examine five metrics that provide a                     about the progress the project made putting people
            multi-faceted view of your community.                                on the map using OpenStreetMap in 2015.


    2                                                                 Open Source Yearbook 2015     .. CC BY-SA 4.0 .. Opensource.com
LEARNING
                    ..............   ..
                           .............
   36         5 great Raspberry Pi projects for the classroom
              Ben Nuttall
                                                                               Most likely to succeed
              The Raspberry Pi is perfect for the classroom. Get

                                                                                         10 projects to
              started with these five great projects.

   38         3 open hardware projects for beginners
              Alicia Gibb
              The Lunchbox Electronics team picks three favorite
              projects and one open hardware book to keep you
                                                                                           fork in 2016
              learning and making.                                                                                             JASON BAKER

   39         Publisher’s picks: 29 open source books for 2015
              Rikki Endsley
                                                                                      34 Our Most Likely to Succeed honors go to
              Six publishers share picks for top 2015 open source-                       10 projects with enough momentum to
              related book releases.                                                           continue their success in the new year.

   47         8 books to make you a more open leader
              Bryan Behrenshausen
              If you’ve resolved to become a more open leader in
              2016, these books can help.


                                                                                CREATING
                                                                                                       ..............   ..
                                                                                                              .............
         Most Playful                                                       52         10 tools for visual effects in Linux
                                                                                       with Kdenlive

  Best open source                                                                     Seth Kenlon
                                                                                       We round up top tools and plugins to get the most

  games of 2015
                                                                                       out of video processing with Kdenlive.


                                            ROBIN MUILWIJK
                                                                           56          Adafruit’s best open source wearables
                                                                                       of 2015
                                                                                       Becky Stern
                                                                                       Adafruit picks favorite open source wearable
                                                                                       products and projects from 2015.
 50 Robin covered the world of open source
    gaming news in 2015. He picks a few
         favorite games to receive the year’s Most                         58          5 favorite 3D printing projects of 2015
                                                                                       Harris Kenny
                                                                                       We look at five of the top innovative 3D-printing-
         Playful honors.
                                                                                       related projects in 2015.




  60 Call for Papers / Editorial Calendar                                    61        7 Reasons to Write For Us / Follow Us


  All lead images by Opensource.com or the author under CC BY-SA 4.0 unless otherwise noted.


  Open Source Yearbook 2015         .. CC BY-SA 4.0 .. O pensource.com                                                                      3
W O R K I N G
                      ..............   ..
                             .............

             6 creative
            ways to use
             ownCloud                         BY JOS POORTVLIET




     ownCloud                    is a self-hosted open source file
                                 sync and share server [1]. Like “big
     boys” Dropbox, Google Drive, Box, and others, ownCloud
                                                                           hard, but managing passwords is certainly a unique feature.
                                                                           There are no less than three apps providing this functional-
                                                                           ity: Passwords [7], Secure Container [8], and Passman [9].
     lets you access your files, calendar, contacts, and other
     data. You can synchronize everything (or part of it) between          3. Store your files where you want
     your devices and share files with others. But ownCloud                External storage allows you to hook your existing data stor-
     can do much more than its proprietary, hosted-on-some-                age into ownCloud, letting you to access files stored on FTP,
     body-else’s-computer competitors.                                     WebDAV, Amazon S3, and even Dropbox and Google Drive
        Let’s look at six creative things ownCloud can do. Some            through one interface.
     of these are possible because ownCloud is open source,                   (Watch Using Federated Cloud Sharing between own-
     whereas others are just unique features it offers.                    Cloud servers on YouTube to learn how to configure external
                                                                           storage in ownCloud Server 8.1. [10])
     1. A scalable ownCloud Pi cluster                                        The “big boys” like to create their own little walled gar-
     Because ownCloud is open source, you can choose be-                   dens—Box user can only collaborate with other Box users;
     tween self-hosting on your own server or renting space from           and if you want to share your files from Google Drive, your
     a provider you trust—no need to put your files at a big com-          mate needs a Google account or they can’t do much. With
     pany that stores it who knows where. Find some ownCloud               ownCloud’s external storage, you can break these barriers.
     providers [2] or grab packages or a virtual machine for your             A very creative solution is adding Google Drive and Drop-
     own server from our site [3].                                         box as external storage. You can work with files on both
        The most creative things we’ve seen are a Banana Pi clus-          seamlessly and share them with others through a simple
     ter [4] and a Raspberry Pi cluster [5]. Although ownCloud’s           link—no account needed to work with you!
     scalability is often used to deploy to hundreds of thousands
     of users, some folks out there take it in a different direction,      4. Get files uploaded
     bringing multiple tiny systems together to make a super-fast       Because ownCloud is open source, people contribute interest-
     ownCloud. Kudos!                                                   ing features without being limited by corporate requirements.
                                                                                                        Our contributors have always
                                      Installing ownCloud on a Banana Pi.
     2. Keep your                     Photo by Jörn Friedrich Dreyer. CC BY-SA 4.0.
                                                                                                        cared about security and pri-
     passwords synced                                                                                   vacy, so ownCloud introduced
     To make ownCloud easier                                                                            features such as protecting a
     to extend, we have made it                                                                         public link with a password and
     extremely modular and have                                                                         setting an expire date years
     an ownCloud app store [6].                                                                         before anybody else did [11].
     There you can find things like                                                                        Today, ownCloud has the
     music and video players, cal-                                                                      ability to configure a shared link
     endars, contacts, productivi-                                                                      as read-write, which means
     ty apps, games, a sketching                                                                        visitors can seamlessly edit
     app, and much more.                                                                                the files you share with them
        Picking only one app from                                                                       (protected with a password
     the almost 200 available is                                                                        or not) or upload new files to


     4                                                                  Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O  pensource.com
your server without be-
ing forced to sign up
to another web service
that wants their private
data. (See the Creating
a public upload folder in
ownCloud 8.1 tutorial
on YouTube. [12])
   This is great for when
people want to share
a large file with you.
Rather than having to
upload it to a third-par-
ty site, send you a link,
and make you go there
and download it (often
requiring a login), they
can just upload it to a
shared folder you pro-
vide, and you can get to work right away.                           Do you have other creative uses for ownCloud? Email your
                                                                    article proposals to open@opensource.com.
5. Get free secure storage
We already talked about how many of our contributors care           Links
about security and privacy. That’s why ownCloud has an app          [1]	ownCloud: https://owncloud.com/
that can encrypt and decrypt stored data.                           [2]	ownCloud providers: https://owncloud.org/providers/
  Using ownCloud to store your files on Dropbox or Google           [3]	ownCloud server instructions:
Drive defeats the whole idea of retaking control of your data             https://owncloud.org/​install/#instructions-server
and keeping it private. The Encryption app changes that. By         [4]	Installing ownCloud on a Banana Pi: http://www.owncluster.de/​
encrypting data before sending it to these providers and de-              2015/11/11/installing-owncloud-on-a-banana-pi/
crypting it upon retrieval, your data is safe as kittens.           [5]	Host your “ownCloud” on a Raspberry Pi cluster:
                                                                          https://christopherjcoleman.wordpress.com/2013/01/05/​
6. Share your files and stay in control                                   host-your-owncloud-on-a-raspberry-pi-cluster/
As an open source project, ownCloud has no stake in build-          [6]	ownCloud app store: https://apps.owncloud.com/
ing walled gardens. Enter Federated Cloud Sharing [13], a           [7]	Passwords: https://apps.owncloud.com/
protocol developed and published by ownCloud that enables           [8]	Secure Container: https://apps.owncloud.com/content/​
different file sync and share servers to talk to one another              show.php/Secure+Container?content=167268
and exchange files securely. Federated Cloud Sharing has            [9]	Passman: https://apps.owncloud.com/content/​show.php/​
an interesting history. Twenty-two German universities [14]               Passman?content=166285
decided to build a huge cloud for their 500,000 students.           [10]	Using Federated Cloud Sharing between ownCloud servers:
But as each university wanted to stay in control of the data              https://youtu.be/9-JEmlH2DEg
of their own students, a creative solution was needed: Fed-         [11]	ownCloud’s Latest Community Edition Adds Video
erated Cloud Sharing. The solution now connects all these                 Streaming, and Easy Mounting of Third-Party Storage:
universities so the students can seamlessly work together. At             https://owncloud.com/owncloud45-community/
the same time, the system administrators at each university         [12]	Creating a public upload folder in ownCloud 8.1:
stay in control of the files their students have created and              https://youtu.be/3GSppxEhmZY
can apply policies, such as storage restrictions, or limitations    [13]	Announcing the draft Federated Cloud Sharing API:
on what, with whom, and how files can be shared.                          http://karlitschek.de/2015/08/announcing-the-draft-federated-​
   And this awesome technology isn’t limited to German                    cloud-sharing-api/
universities: Every ownCloud user can find their Federated          [14]	Sciebo: https://owncloud.com/customer/sciebo/
Cloud ID in their user settings and share it with others.
                                                                    Author
Conclusion                                                          Jos Poortvliet is a technology enthusiast and all-things-open
So there you have it. Six ways ownCloud enables people to           evangelist. He’s also community manager at ownCloud,
do special and unique things, all made possible because it          and a SUSE and KDE marketing veteran. Jos loves biking
is open source and designed to help you liberate your data.         through Berlin and cooking for friends and family.


Open Source Yearbook 2015      .. CC BY-SA 4.0 .. O pensource.com                                                                     5
W O R K I N G
                     ..............   ..
                            .............

                    6 useful
                 LibreOffice
                 extensions                      BY ITALO VIGNOLI




                                                                         2. Alternative dialog Find & Replace for Writer
     LibreOffice                 is the best free office suite
                                 around, and as such has been
     adopted by all major Linux distributions. Although LibreOffice
                                                                             (AltSearch)
                                                                         The AltSearch extension [4] adds many new features to
     is already packed with features, it can be extended by using        Writer’s find & replace function: searched or replaced text
     specific add-ons, called extensions.                                can contain one or more paragraphs; multiple search and
        The main LibreOffice extensions website is extensions.li-        replacement in one step; searching: Bookmarks, Notes,
     breoffice.org [1]. Extensions are tools that can be added or        Text fields, Cross-references and Reference marks to their
     removed independently from the main installation, and may           content, name or mark and their inserting; searching and
     add new functionality or make existing functionality easier         inserting Footnote and Endnote; searching object of Table,
     to use.                                                             Pictures and Text frames according to their name; searching
                                                                         out manual page and column break and their set up or deac-
     1. MultiFormatSave                                                  tivation; and searching similarly formatted text, according to
     MultiFormatSave [2] lets users save a document in the               cursor point. It is also possible to save and load search and
     OpenDocument, Microsoft Office (old and new), and/or                replacement parameters, and execute the batch on several
     PDF formats simultaneously, according to user settings.             opened documents at the same time.
     This extension is extremely useful during the migration
     from Microsoft Office document formats to the Open Doc-
     ument Format standard [3], because it offers the option to
     save in both flavors: ODF for interoperability, and Micro-
     soft Office for compatibility with all users sticking to lega-
     cy formats. This makes the migration process softer, and
     easier to administer.




                                                                         3. Pepito Cleaner
                                                                         Pepito Cleaner [5] is an extension of LibreOffice created to
                                                                         quickly resolve the most common formatting mistakes of old
                                                                         scans, PDF imports, and every digital text file. By clicking
                                                                         the Pepito Cleaner icon on the LibreOffice toolbar, users will
                                                                         open a window that will analyze the document and show the
                                                                         results broken down by category. This is extremely useful


     6                                                                Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O pensource.com
when converting PDF documents to ODF, as it cleans all the         6. Anaphraseus
cruft left in place by the automatic process.                      Anaphraseus [10] is a CAT (Comput-
                                                                   er-Aided Translation) tool for creating,
                                                                   managing, and using bilingual Trans-
                                                                   lation Memories. Anaphraseus is a
                                                                   LibreOffice macro set available as an
                                                                   extension or a standalone document. Orig-
                                                                   inally, Anaphraseus was developed to work with
                                                                   the Wordfast format, but it can also export and
                                                                   import files in TMX format. Anaphraseus main
                                                                   features are: text segmentation, fuzzy search
                                                                   in Translation Memory, terminology recognition,
                                                                   and TMX Export/Import (OmegaT translation
                                                                   memory format).




4. ImpressRunner
ImpressRunner [6] is a simple extension that transforms an
Impress [7] presentation into an auto-running file. The exten-
sion adds two icons, to set and remove the autostart func-
tion, which can also be added manually by editing the File |
Properties | Custom Properties menu, and adding the term
autostart in one of the first four text fields. This extension
is especially useful for booths at conferences and events,
where the slides are supposed to run unattended.

5. Export as Images                                                Links
The Export as Images extension [8] adds a File menu entry          [1]	LibreOffice extensions: http://extensions.libreoffice.org/
export as Images... in Impress and Draw [9], to export all         [2]	MultiFormatSave: http://extensions.libreoffice.org/exten-
slides or pages as images in JPG, PNG, GIF, BMP, and TIFF                sion-center/multisave-1
format, and allows users to choose a file name for exported        [3]	Open Document Format:
images, the image size, and other parameters.                            http://www.opendocumentformat.org/
                                                                   [4]	Alternative dialog Find & Replace for Writer (AltSearch):
                                                                         http://extensions.libreoffice.org/extension-center/alterna-
                                                                         tive-dialog-find-replace-for-writer
                                                                   [5]	Pepito Cleaner:
                                                                         http://pepitoweb.altervista.org/pepito_cleaner/index.php
                                                                   [6]	ImpressRunner: http://extensions.libreoffice.org/exten-
                                                                         sion-center/impressrunner
                                                                   [7]	Impress: https://www.libreoffice.org/discover/impress/
                                                                   [8]	Export as Images: http://extensions.libreoffice.org/exten-
                                                                         sion-center/export-as-images
                                                                   [9]	Draw: https://www.libreoffice.org/discover/draw/
                                                                   [10]	Anaphraseus: http://anaphraseus.sourceforge.net/

                                                                   Author
                                                                   Italo Vignoli is a founding member of The Document Foun-
                                                                   dation. He handles the organization’s PR and media rela-
                                                                   tions, coordinates its certification program, and is an interna-
                                                                   tional spokesman for the project. Italo has supervised some
                                                                   of the largest LibreOffice migration projects in Italy, and is a
                                                                   LibreOffice trainer.


Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                                       7
W O R K I N G
                     ..............   ..
                            .............

     5 favorite open source
     Django packages
                     BY JEFF TRIPLETT, JACOB KAPLAN-MOSS, AND FRANK WILES




     Django               [1] is built
                          around the
     concept of reusable apps [2]:
                                                                                                           So, we’ve seen the entire
                                                                                                        history of the Django project
                                                                                                        and community, and we’ve
     self-contained packages that                                                                       seen popular packages
     provide re-usable features.                                                                        come and go. Between the
     You can build your site by                                                                         three of us, we’ve probably
     composing these reusable                                                                           tried at least half of these
     apps, together with your own site-specific code. There’s a          8,000 apps personally, or we know someone who has. We
     rich and varied ecosystem of reusable apps available for            have a strong understanding of what makes an app solid and
     your use—PyPI lists more than 8,000 Django apps [3]—but             reliable, and we have a good understanding of what gives
     how do you know which ones are best?                                these things staying power.
        To help focus your app search, we’ve put together this list
     of our five favorites. They are:                                    Best way to start a new Django site: Cookiecutter
     • Cookiecutter: the best way to start a new Django site. [4]       Starting off a new project or app is always a bit of a pain. You
     • Whitenoise: the best static asset server. [5]                    can use Django’s built in `startproject` but if you’re like us,
     • Django Rest Framework: the best way to write REST                you’re particular in how you do things. Cookiecutter solves
        APIs with Django. [6]                                            this by giving you a quick and easy way to define project or
     • Wagtail: the best Django-based content-management                app templates that can be easily reused. A quick example,
        system. [7]                                                      just `pip install cookiecutter` and then run this from the
     • django-allauth: the best way to provide “social login”           command line:
        (e.g., Twitter, Facebook, GitHub, etc). [8]
     We also recommend you check out Django Packages [9],                $ 
                                                                           cookiecutter https://github.com/marcofucci/
     a directory of reusable Django apps. Django Packages                  cookiecutter-simple-django
     organizes Django apps into “grids” that allow you to com-
     pare similar packages and chose between them. You can               You’ll immediately start getting prompted for quick answers,
     see which features are offered by each package, as well             such as the name of your project, repo, author name, email,
     as usage statistics. (For example, the grid for REST tools          and a few other bits of configuration. These are used to help
     [10] might help you understand why we recommend Django              fill out the project details. We picked the ever so original ’foo’
     REST Framework.)                                                    to be our repo name. So cookiecutter created a simple Djan-
                                                                         go project in the subdirectory ’foo’.
     Why should you trust us?                                                If you poke around in the ’foo’ project a bit, you’ll see
     We’ve been using Django for longer than almost anyone.              the other bits of configuration you were prompted for have
     Two of us (Frank and Jacob) worked at the Lawrence Jour-            been templated into the files themselves along with sub-di-
     nal-World [11] (birthplace of Django) before Django was re-         rectories as necessary. This “template” is all defined at the
     leased (and in fact helped make the open source release             GitHub repo URL we used as the only argument when we
     happen). We’ve all spent the past eight years running a con-        called `cookiecutter`. This example used a remote GitHub
     sultancy that advises companies on how best to use Django.          repo as the template; however, note that you can use local


     8                                                                Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O  pensource.com
file system directories as well, which is perfect for non-re-          • E asy integration of authentication styles, such as OAuth,
usable scenarios.                                                         Basic Auth, or API Tokens.
   We mention cookiecutter as a great Django package, but              • Simple permission system for fine-grained control of which
honestly it’s useful for plain Python or even non-Python-re-              users can use which API endpoints and/or actions.
lated purposes. Being able to lay things out exactly as you            • Built-in rate limiting.
like in an easily repeatable way makes cookiecutter a great            • Nearly automatic API documentation when combined with
tool for keeping your workflow DRY.                                       django-rest-swagger [16].
                                                                       • Extensive ecosystem of third-party libraries.
Best static asset server: Whitenoise                                   Although you could certainly build an API without DRF, we
For many years, serving your site’s static assets—images,              can’t fathom a reason why you would start off down that
JavaScript, CSS—was a pain. The built-in django.views.                 path. Even if you don’t use all of DRF’s features, building
static.serve view [12] is, as the documentation states, “not           up your own API views from their solid base view classes is
hardened for production use and should be used only as a               a huge win in terms of safety, consistency of your API, and
development aid.” But serving media from a “real” web serv-            development velocity. If you aren’t using DRF already, you
er, such as NGINX or out of a CDN, can be difficult to set up.         should set aside some time to check it out.
Whitenoise cleanly solves this problem. It’s as easy to set up
as the development-only static server, and is hardened and             Best Django-based CMS: Wagtail
optimized for production. Setup is simple:                             Wagtail is the current darling of the Django CMS world and
1. Make sure you’re using Django’s contrib.staticfiles app            with good reason. Like most CMS systems, it gives you flex-
    [13], and that you’ve correctly set `STATIC_ROOT` in               ibility to define different types of pages and their content via
    your settings file.                                                simple Django models. This takes you from zero to a basi-
2. Enable Whitenoise in your `wsgi.py` file:                          cally working system in hours, not days. To give you a quick
                                                                       example, to define a Staff page type for people at your com-
   from django.core.wsgi import get_wsgi_application                   pany can be as simple as:
   from whitenoise.django import DjangoWhiteNoise
   application = get_wsgi_application()                                from wagtail.wagtailcore.models import Page
   application = DjangoWhiteNoise(application)                         from wagtail.wagtailcore.fields import RichTextField
                                                                       fr
                                                                         om wagtail.wagtailadmin.edit_handlers import
That’s really all it takes! For large applications, you’ll likely        FieldPanel, MultiFieldPanel
want to use a dedicated media server and/or a CDN, but                 fr
                                                                         om wagtail.wagtailimages.edit_handlers import
for most small- or medium-sized Django sites, Whitenoise is              ImageChooserPanel
more than powerful enough.                                             class StaffPage(Page):
  For more information on Whitenoise, check out the docu-                  name = models.CharField(max_length=100)
mentation [14].                                                            hire_date = models.DateField()
                                                                           bio = models.RichTextField()
Best Tool for REST APIs: Django REST Framework                             email = models.EmailField()
REST APIs are quickly becoming a standard feature of mod-                  he
                                                                             adshot = models.ForeignKey(‘wagtailimages.Image’,
ern web applications. An API is really simply talking in JSON                  null=True, blank=True)
rather than HTML, and of course you can do this with just                  content_panels = Page.content_panels + [
Django. You can craft your own views that set the proper                        FieldPanel(‘name’),
content types and return data in JSON rather than templat-                      FieldPanel(‘hire_date’),
ed HTML responses. This is exactly what many people did                         FieldPanel(‘email’),
before API frameworks such as Django Rest Framework                             FieldPanel(‘bio’, classname=”full”),
(a.k.a., DRF) [6] were released.                                                ImageChoosePanel(‘headshot’),
   Building a REST API with DRF is similar to working with                 ]
Django’s Class Based Views if you’re familiar with them, except
these are specifically designed and targeted around an API use         The real appeal of Wagtail, however, is in its easy-to-use
case. Quite a bit of code is involved in your average API setup,       modern admin interface and flexibility. You can control
so instead of a code sample to get you excited, we’ll highlight        which types of pages are allowed in different areas of the
some of DRF’s features that make your life easier:                     site, add additional complex logic to your pages, and get
• Automatic browseable API, which makes development and               standard moderation/approval workflows right out of the
   manual testing a breeze. Click around in the DRF demo               box. With most CMS systems, at some point you run into
   example [15]. You can view API responses and support                a wall you can work around. With Wagtail, we have yet to
   POST/PUT/DELETE type operations without having to do                find a wall we couldn’t easy find a door through to make
   anything yourself.                                                  it do exactly what we want in an easy and maintainable


Open Source Yearbook 2015      .. CC BY-SA 4.0 .. O    pensource.com                                                                 9
W O R K I N G
                     ..............   ..
                            .............
     way. If you’re interested, we wrote up a deeper dive into           to work, too. This is nice for anyone with custom authen-
     Wagtail [17].                                                       tication needs.
                                                                            django-allauth is easy to setup and has extensive docu-
     Best Social Login Tool: django-allauth                              mentation. The project is also well tested so you know that
     django-allauth [18] is a reusable Django application that           everything actually works.
     solves your registration and authentication needs. Whether
     you need a local or social registration system, django-allauth      Authors
     has you covered.                                                    Jeff Triplett has worked at the Lawrence Journal-World in
        The project supports multiple authentication schemes,            Lawrence, KS, where Django was invented. He now works
     such as user name or email address. Once a user has signed          at Revolution Systems (Revsys) as a developer and a con-
     up, multiple strategies are supported for account verification      sultant. Jeff is a co-founder of the Django Events Foun-
     ranging from none to email verification. Multiple social and        dation North America (DEFNA) and Conference Chair for
     email accounts are also supported. Pluggable signup forms           DjangoCon US 2015 and 2016.
     are also supports which allows asking additional questions
                                                                         Jacob Kaplan-Moss is a core contributor to Django and
     during registration.
                                                                         works at Heroku as Director of Security.
        django-allauth supports more than 20 authentica-
     tion providers, including Facebook, GitHub, Google,                 Frank Wiles is President and Founder of Revolution Sys-
     and Twitter. If you have an account on a social website             tems, a open source consultancy specializing in performant
     that’s not supported, then it’s most supported through a            and large scale Python, Django, PostgreSQL, and related
     third-party add-on. The project supports writing custom             web infrastructure. He is a frequent author and speak-
     backends, which allows custom authentication systems                er on open source topics. Frank’s personal homepage is
                                                                         frankwiles.com.

     Links
     [1]	Django: https://www.djangoproject.com/                         [11]	Lawrence-born Django celebrates 10th anniversary:
     [2]	How to write reusable apps: https://docs.djangoproject.              http://www2.ljworld.com/news/2015/jul/09/happy-birth-
           com/en/1.8/intro/reusable-apps/                                     day-django/
     [3]	PyPi packages: https://pypi.python.org/pypi?:ac-               [12]	django.views.static.serve view: https://docs.djangoproject.
           tion=browse&c=523                                                   com/en/1.8/ref/views/#django.views.static.serve
     [4]	Cookiecutter: https://github.com/audreyr/cookiecutter          [13]	staticfiles app: https://docs.djangoproject.com/en/1.8/ref/
     [5]	Using WhiteNoise with any WSGI application:                          contrib/staticfiles/
           https://github.com/audreyr/cookiecutter                       [14]	Whitenoise documentation:
     [6]	Django Rest Framework:                                               http://whitenoise.evans.io/en/latest/index.html
           http://www.django-rest-framework.org/                         [15]	DRF demo example: http://restframework.herokuapp.com/
     [7]	Wagtail: https://wagtail.io/                                   [16]	Django REST Swagger: http://django-rest-swagger.
     [8]	django-allauth:                                                      readthedocs.org/en/latest/index.html
           http://www.intenct.nl/projects/django-allauth/                [17]	Get ready for Wagtail, the best Django CMS yet:
     [9]	Django Packages: https://www.djangopackages.com/                     https://opensource.com/business/15/5/wagtail-cms
     [10]	Grid for REST tools:                                          [18]	django-allauth documentation:
           https://www.djangopackages.com/grids/g/rest/                        http://django-allauth.readthedocs.org/en/latest/




     10                                                               Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O  pensource.com
                                                                                        ....................      W O R K I N G




                                                        Facebook’s top
                                                         5 open source
                                                       projects of 2015                               BY CHRISTINE ABERNATHY



Facebook                 believes in the power of open source.
                         When a community gathers to work
on code, there are a host of benefits. Fresh eyes point out
problems and we arrive at solutions faster. Together we tackle
the challenges we’re facing, innovation accelerates, and the
community stretches the limitations of existing technology.
  Of course, a successful open source program depends on
a strong, collaborative community. As the end of the year ap-
proaches, we wanted to reflect on Facebook’s top five open
source projects in 2015, measured by community activity
and impact.

HipHop Virtual Machine (HHVM)                                      community, including a 75% increase in the number of com-
HHVM [1] is our virtual machine and web server that we             mits and a 198% increase in the number of forks. React is
open sourced in 2013, building on the HPHPc compiler we            Facebook’s JavaScript library for building user interfaces,
released in 2010. In the past year alone, we’ve seen a 29%         and is being used by many companies because it takes a
increase in the number of commits and a 30% increase in            different approach to building applications: React allows you
the number of forks.                                               to break the application down into separate components that
   HHVM is most commonly run as a standalone server,               are decoupled so that the various components can be main-
replacing both Apache and mod_php, designed to execute             tained and iterated on independently.
programs written in Hack and PHP. It uses a just-in-time           This year we had two major releases, launched React Na-
compilation approach to achieve superior performance,              tive, announced new developer tools [8], and saw more
while maintaining the flexibility that PHP developers are ac-      companies—including Netflix [9] and WordPress [10]—use
customed to. We’ve reached great milestones in 2015:               React to build their products.
1. We made new Async features [2] available by default, in-
    cluding Async MySQL [3] and MCRouter [4] (memcached)           Presto
    support.                                                       Presto [11] is our distributed SQL engine for running interac-
2. In December we announced [5] support for all major PHP         tive analytic queries against data sources of all sizes, rang-
    7 features at the same time that the language itself was       ing from gigabytes to petabytes. We created Presto to help
    released, and we released our next generation of user          us analyze data faster because our data volume grew and
    documentation.                                                 the pace of our product cycle increased.
3. Box announced [6] HHVM as the exclusive engine that                Since making Presto available to others in November
    serves its PHP codebase.                                       2013, we’ve seen a lot of growth, adoption, and support for
4. Etsy migrated to HHVM in April, which helped the compa-        it, including a 48% increase in the number of commits and a
    ny address a variety of challenges associated with build-      99% increase in the number of forks in the past year. Com-
    ing mobile products at the scale needed.                       panies like Airbnb [12], Dropbox, and Netflix [13] use Presto
                                                                   as their interactive querying engine. We also see growing
React                                                              adoption all over the world, including by Gree [14], a Jap-
Facebook open sourced React [7] in May 2013, and in the            anese social media game development company, and Chi-
past year we’ve continued to see strong collaboration in the       nese e-commerce company JD.com.


Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                              11
W O R K I N G
                     ..............   ..
                            .............
        In 2015, Teradata announced [15] plans to join the Pres-          Links
     to community, with a focus on enhancing enterprise features          [1]	HipHop Virtual Machine (HHVM):
     and providing support. This emphasizes the level of trust the              https://github.com/facebook/hhvm
     community has in Presto’s ability to be an integral part of the      [2]	Async introduction:
     data infrastructure stack. Additionally, Amazon Web Services               https://docs.hhvm.com/hack/async/introduction
     (AWS) supports Presto as a first-class offering in its EMR ser-      [3]	Async MySQL extention:
     vice [16], with many production users—including Nasdaq and                 https://docs.hhvm.com/hack/async/extensions
     leading business intelligence tool vendor MicroStrategy—sup-         [4]	MCRouter extention:
     porting Presto in its flagship MicroStrategy 10 product.                   https://docs.hhvm.com/hack/async/extensions#mcrouter
                                                                          [5]	Improved user documentation announcement:
     RocksDB                                                                    http://hhvm.com/blog/10925/improved-user-documentation
     We open sourced RocksDB [17], an embeddable, persistent              [6]	Box’s HHVM migration:
     key-value store for fast storage, in November 2013. Aside                  https://code.facebook.com/posts/1607907626123431/un-
     from the impressive 52% increase in the number of commits                  der-the-hood-box-s-hhvm-migration/
     and the 57% increase in the number of forks for this project in      [7]	React: https://github.com/facebook/react
     the past year, the reason this particular project has resonated      [8]	New React Developer Tools:
     so well in the open source community is that the embedded                  https://facebook.github.io/react/blog/2015/09/02/new-re-
     database helps provide a way to work around slow query re-                 act-developer-tools.html
     sponse time due to network latency, and it is flexible enough        [9]	Netflix Likes React:
     to be customized for various emerging hardware trends.                     http://techblog.netflix.com/2015/01/netflix-likes-react.html
        RocksDB powers critical services at companies such as             [10]	The Story Behind the New WordPress.com:
     LinkedIn and Yahoo, and a key focus for us in 2015 was to                  https://developer.wordpress.com/2015/11/23/the-story-be-
     bring the RocksDB storage engine to general-purpose da-                    hind-the-new-wordpress-com/
     tabases, starting with MongoDB. Similar to Teradata’s com-           [11]	Presto: https://github.com/facebook/presto
     mercial support for Presto, another milestone for RocksDB in         [12]	Introducing Airpal: http://nerds.airbnb.com/airpal/
     2015 was the announcement of enterprise-level support by             [13]	Using Presto in our Big Data Platform on AWS:
     Percona’s [18] data performance experts.                                   http://techblog.netflix.com/2014/10/using-presto-in-our-big-
                                                                                data-platform.html
     React Native                                                         [14]	A year of using Presto in production:
     React Native [19], one of our newest open source projects,                 http://labs.gree.jp/blog/2014/12/12838/
     was made available in March 2015. React Native lets engi-            [15]	Open-Source Presto to the Enterprise:
     neers use the same React methodology and tools to rap-                     http://blogs.teradata.com/data-points/bring-
     idly build native applications for mobile devices. In addition             ing-open-source-presto-enterprise/
     to developing these tools internally, Facebook collaborates          [16]	Presto on Amazon EMR:
     with the open source community to improve the experience                   https://aws.amazon.com/elasticmapreduce/details/presto/
     for developers worldwide. In its first year, React Native has        [17]	RocksDB: https://github.com/facebook/rocksdb
     become the second most popular Facebook open source                  [18]	Percona: https://www.percona.com/
     project, with more than 23,000 followers in GitHub. It was           [19]	React Native:
     used internally to build the Facebook Ads app for both iOS                 https://github.com/facebook/react-native
     and Android, resulting in an 85% code reuse by developers
     whose core competency was JavaScript. The paradigm shift             Author
     in mobile development that React Native brings to the table          Christine Abernathy is a developer advocate on the open
     makes this one a key highlight of 2015.                              source team at Facebook. She’s held previous developer ad-
        Overall, we still have a lot of work to do, but we’re proud       vocacy roles on both Parse and Facebook Platform. Prior to
     of what we’ve been able to accomplish as a community. We             working at Facebook, Christine lead engineering at MShift,
     want to thank everyone who dedicated time to to these proj-          a mobile banking software provider delivering iOS apps and
     ects and helped us make 2015 a great year!                           mobile browser-based products.




     12                                                                Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O  pensource.com
                                                                                        ....................       W O R K I N G




                                                         10 cool tools
                                                      from the Docker
                                                          community
                                                                                                               BY MANO MARKS




Looking back                      at 2015, there have been
                                  many projects created by
the Docker community that have advanced the developer
                                                                  tainers required when distributed across the Internet. Specif-
                                                                  ically, this tool enables developers to use Docker labels [8] to
                                                                  create metadata within the domain of container technology,
experience. Although choosing among all the great contri-         to check labels against official label schema and to validate
butions is hard, here are 10 “cool tools” that you should be      against provided JSON schema.
using if you are looking for ways to expand your knowledge
and use of Docker.                                                4. Dvol
                                                                  Dvol [9] enables version control for your development
1. Container Migration Tool (CMT)                                 databases in Docker. Dvol lets you commit, reset, and
CMT [1] was a winning entry [2] at the Docker Global Hack         branch the containerized databases running on your lap-
Day #3. The Container Migration team [3] drew inspiration         top, so you can easily save a particular state and come
from a DockerCon talk in which Michael Crosby (@crosby-           back to it later. Dvol can also integrate with Docker Com-
michael) and Arnaud Porterie (@icecrime) migrated a Quake         pose to spin up reproducible microservices environments
3 container around the world, demonstrating container migra-      on your laptop.
tion while maintaining a TCP connection. The CMT project
created an external command-line tool that can be either used     5. IPVS Daemon GORB
with Docker or runC [4] to help “live migrate” containers be-     Presented at DockerCon EU, IP Virtual Server (IPVS) for
tween different hosts by performing pre-migration validations     Docker containers enables production-level load balanc-
and allowing it to auto-discov-                                                                 ing and request routing using
er suitable target hosts.                                                                       open source IPVS, which has
                                                                                                been part of the Linux ker-
2. Dockercraft                                                                                  nel for more than a decade.
We had to add in a fun                                                                          It supports TCP, SCTP, and
one—Dockercraft [5]! Lots of                                                                    UDP and can achieve fast
Docker users run custom Mi-                                                                     speeds, often within five
necraft [6] servers in contain-                                                                 percent of direct connection
ers. But Dockercraft is a Mi-                                                                   speeds. Other features in-
necraft client to visualize and                                                                 clude NAT, tunneling, and
manage Docker containers.                                                                       direct routing. To make IPVS
With the flick of a switch, a                                                                   easier to use, the Go Routing
container turns on or off. And                                                                  and Balancing (GORB) dae-
with the press of a button, you can destroy one. Dockercraft      mon [10] was created as a REST API inside a Docker con-
is a fun project—that is surprisingly addictive—from Docker       tainer to provide IPVS routing for Docker.
engineers Adrien Duermael and Gaetan de Villele.
                                                                  6. Libnetwork
3. Docker Label Inspector                                         Libnetwork [11] combines networking code from both libcon-
The Docker Label Inspector [7] tool helps ensure that devel-      tainer and Docker Engine to create a multi-platform library
opers are providing Docker images with the metadata con-          for networking containers. The goal of libnetwork is to deliver


Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O pensource.com                                                                13
W O R K I N G
                     ..............   ..
                            .............
     a robust Container Network Model that provides a consistent           10. Wagl, DNS service discovery for Swarm
     programming interface and the required network abstrac-               Wagl [20] is a DNS server that allows microservices running
     tions for applications. There are many networking solutions           as containers on a distributed Docker Swarm [16] cluster to
     available to suit a broad range of use-cases. Libnetwork uses         find and talk to each other. Wagl is minimalist and works as a
     a driver/plugin model to support all of these solutions, while        drop-in container in your cluster to provide DNS-based ser-
     abstracting the complexity of the driver implementations by           vice discovery and simple load balancing by rotating a list of
     exposing a simple and consistent Network Model to users.              IP addresses in DNS records.

     7. The Raspberry Pi Challenge                                         Links
     In the DockerCon closing keynote [12], Dieter Reuter from             [1]	Container migration tool:
     Hypriot presented a demo running 500 Docker containers                      https://github.com/marcosnils/cmt
     on a Raspberry Pi 2 device. Convinced that this number of             [2]	Container migration tool (CMT) (YouTube video):
     containers could be at least doubled, Dieter then challenged                https://youtu.be/pwf0-_cs6U4
     [13] the Docker community to beat his personal record. As             [3]	Participating in Docker global hackday #3 (blog post):
     part of his project, Dieter Reuter demonstrated how to get                  http://blog.mantika.io/GHD/
     started with Docker on Raspberry Pi and how to scale the              [4]	runC: https://runc.io/
     number number of web servers running in containers that               [5]	Dockercraft: https://github.com/docker/dockercraft
     could reside on a single Raspberry Pi 2. The current record           [6]	Minecraft: https://minecraft.net/
     is more than 2,500 web servers running in containers on a             [7]	Docker Label Inspector:
     single Raspberry Pi 2.                                                      https://github.com/garethr/docker-label-inspector
                                                                           [8]	Docker labels:
     8. Scaling Spark with Zoe analytics                                         https://docs.docker.com/engine/userguide/labels-cus-
     The Zoe open source user-facing tool [14] ties together                     tom-metadata/
     Spark [15], a data-intensive framework for big data computa-          [9]	dvol: https://github.com/ClusterHQ/dvol
     tion, and Docker Swarm [16]. Zoe can execute long-running             [10]	Go Routing and Balancing (GORB):
     Spark jobs, but also Scala or iPython interactive notebooks                 https://github.com/kobolog/gorb
     and streaming applications, covering the full Spark develop-          [11]	libnetwork: https://github.com/docker/libnetwork
     ment cycle. When a computation is finished, resources are             [12]	DockerCon 2015 Videos: Day 2 Closing Keynote – What’s
     automatically freed and available for other uses, because all               Next for Docker?: http://blog.docker.com/2015/07/docker-
     processes are run in Docker containers. This tooling can en-                con-2015-videos-day-2-closing-keynote/
     able application scheduling on top of Swarm and optimized             [13]	Raspberry Pi Challenge:
     container placement.                                                        https://github.com/hypriot/rpi-kernel
                                                                           [14]	Zoe: https://github.com/DistributedSystemsGroup/
     9. Unikernel demo source code                                               zoe-docker-images
     First unveiled as a cool hack at DockerCon EU (Unikernels,            [15]	Apache Spark: http://spark.apache.org/
     meet Docker! [17]), this demo [18] showed how unikernels can          [16]	Docker Swarm: https://docs.docker.com/swarm/
     be treated as any other container. In this demo, Docker was           [17]	Unikernels, meet Docker!:
     used to build a unikernel microservice and then followed up                 http://unikernel.org/blog/2015/unikernels-meet-docker/
     by deploying a real web application with database, webserver,         [18]	Contain Your Unikernels!:
     and PHP code, all running as distinct unikernel microservices               http://unikernel.org/blog/2015/contain-your-unikernels/
     built using Rump Kernels [19]. Docker managed the uniker-             [19]	Rump Kernels: http://rumpkernel.org/
     nels just like Linux containers, but without needing to deploy a      [20]	wagl: https://github.com/ahmetalpbalkan/wagl
     traditional operating system. Apart from the MySQL, NGINX,
     and PHP with Nibbleblog unikernels shown in the demo, this            Author
     repository also contains some examples of how to get started.         Mano Marks is Director of Developer Relations at Docker, Inc.




     14                                                                 Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O pensource.com
                                                                                        ....................      W O R K I N G




                                                                5 handy
                                                         Drupal modules                                  BY MICHAEL E. MEYERS




                                                                                                  Views
Drupal            [1], one of the
                  largest open
source projects in the world,
                                                                                                   Views [2], one of the most
                                                                                                   popular contributed Drupal
is a content management sys-                                                                       modules, enables site build-
tem and application frame-                                                                         ers, content editors, and oth-
work that powers millions of                                                                       er non technical users to sur-
websites, web services, and                                                                        face information from within
mobile applications. Individu-                                                                     Drupal—or other systems
als and organizations in every                                                                     through Drupal—and display
sector use Drupal for every-                                                                       and visualize that information
thing from simple blogs and micro-sites, to complex intranets      through a point and click interface. With Views you can cre-
and private internal applications, to some of the largest sites    ate a new page that lists all recent updates to your site, a
on the web, including several top 100 properties.                  sidebar block that shows the five most recent comments
   More than 3,000 people contribute to the core Drupal            on your website, a slideshow of your most popular images
codebase that provides a base level of functionality with a        of the week, and much more. Views can be dynamic, end
modular architecture. Over 10,000 developers contribute and        users can have access to control resorting or filtering the
maintain more than 25,000 contributed open source mod-             information (by date or other parameters), and privileged
ules that modify and extend the core capabilities, changing        users can be granted the ability to perform bulk actions on
behavior, adding new features, and integrating Drupal with         Views. For example, on a site with moderated comments,
other systems. Users can add their own modules, as well as         admins can create a page where users can quickly select
third-party PHP libraries, and leverage a lot of existing func-    all the comments they want to approve or reject, and do so
tionality, so they can focus on their unique needs, branding       in bulk to save a lot of time. As of Drupal 8, Views is now a
and design, and business logic to get up and running quickly.      part of Drupal Core and has expanded capabilities so users
In addition to its highly extensible codebase, Drupal lets us-     can build custom admin pages, export any View as JSON
ers who are not programmers manage and control a lot of            or XML, and build most of a site—or the back-end for a mo-
how the platform and their site(s) run and operate through         bile application—without writing a line of code.
point and click end-user interfaces. This enables more peo-
ple to contribute to an organization’s online presence, and        BigPipe
site updates happen significantly faster because Drupal us-        Site speed is a critical goal for all websites and companies.
ers aren’t reliant on expensive and limited development re-        The BigPipe [3] concept was created by Facebook and was
sources, or updating code.                                         a key component in doubling the speed of their site page
   The newest major version of Drupal, version 8, came             load times. BigPipe is a contributed module for Drupal 8
out in November 2015, so let’s look at a few of my fa-             that leverages Facebook’s methodology and delivers web
vorite contributed modules. Whether you’re running one             pages from servers to clients in a way that allows dramat-
Drupal website, or thousands, here are five modules that           ically improved perceived load time as well as the actual
will empower your entire team and drive the success of             page load time of sites. With BigPipe the server will send
your application:                                                  an initial response or page with the cacheable components


Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                              15
W O R K I N G
                     ..............   ..
                            .............
     and place holders for any dynamic or uncacheable parts,             Lightning
     and then stream in the dynamic/personalized pieces to re-           Lightning [6] isn’t actually a module; it’s a collection of Drupal
     place the placeholders.                                             modules provided as a distribution. Drupal distributions are
                                                                         a way to package up and distribute a Drupal site (modules,
     Rules                                                               themes, configurations, automated QA tests, content, etc.).
     Rules [4] is a contributed module that enables site users to        Launching a new website can be done quickly by deploying
     create Event, Condition, Action (ECA) rules. Site builders          a distribution for a specific use case, and then adding any
     can create and modify fairly complex business logic without         customizations required. The Lightning distribution is meant
     writing any code, and developers have tremendous flexibil-          to be a framework that you build on top of—it provides you
     ity to create complex rules, and to extend and modify the           with pre-configured popular modules that work well togeth-
     behavior of the Rules module itself. For example, when a            er for common use cases, with the ability to disable what
     new comment is posted to a page (an event), a site builder          you don’t need, and launch a new site on Drupal using best
     could create a rule that sends an email notifying the author        practices for the most common needs. Lightning helps new
     of the page (the action) of the new comment so they can re-         users advance through the learning curve much faster, and
     view and respond quickly. Optionally, users can add a con-          enables all users to rapidly deploy new sites.
     dition to send the email only if the comment author is not             What are your favorite Drupal modules? From the ob-
     the author of the page (so the page author doesn’t get an           scure problem solvers, to the ones you simply can’t live
     email every time they reply to a comment). Many rules can           without, share your story and send Drupal article proposals
     also be triggered manually via the click of a button (e.g., by      to open@opensource.com.
     a site admin) or, via the Rules API, actions can be set to run         Disclosure: In partnership with Acquia, OpenSource.com
     immediately or scheduled.                                           and Red Hat are Drupal users and open source contributors
                                                                         to the Drupal project.
     Features
     Most organizations write code and make changes to their             Links
     web sites in one or more development environments, then             [1]   Drupal: https://www.drupal.org/
     integrate and test these changes in QA or staging environ-          [2]   Views: https://www.drupal.org/project/views
     ments, and finally release approved changes to their pro-           [3]   BigPipe: https://www.drupal.org/project/big_pipe
     duction or live environment. Furthermore, few organizations         [4]   Rules: https://www.drupal.org/project/rules
     have a single website; nowadays even individuals run many           [5]   Features: https://www.drupal.org/project/features
     websites, and large organizations can have more than                [6]   Lightning: https://www.drupal.org/project/lightning
     10,000 sites. Features [5] is a contributed module that en-
     ables you to import and export configuration and or code as         Author
     a package or collection that you can move across Drupal             Michael E. Meyers is the VP of Developer Relations at Acquia.
     sites. For example, site builders could create a rule using         He’s been driving innovation in the Drupal community for more
     the Rules module and then using Features, export the rule           than a decade. Prior to joining Acquia, Michael was the CTO
     so that it can be imported into the many other environments         of Examiner.com, a top 50 site, and the leading contributor to
     and web sites you have.                                             Drupal 7. Follow Michael on Twitter @MichaelEMeyers.




     16                                                               Open Source Yearbook 2015      .. CC BY-SA 4.0 .. O  pensource.com
                                                                                              ....................        W O R K I N G




                                   Top 5 open source
                                    frameworks every
                                 application developer
                                          should know                                                               BY JOHN ESPOSITO



Software                 has been eating the world for far lon-
                         ger than four years [1]. But develop-
ers think of software a little differently. Insofar as we’re solv-
ing real-world problems [2], we’re not thinking mainly of the
metal [3]. And as the problems get bigger and the solutions
more complex, pragmatic (and not-too-leaky) abstractions
become more important than ever.
   The upshot: From a productivity-oriented developer’s point
of view, frameworks are eating the world. But which ones are
eating how much of which parts of the world?
   Given the insane variety of superb open source frame-
works available, I picked our top 5 open source frameworks
of 2015 not from a single ranked order, but from all levels
of the stack. (For front-ends, I focused on the web and, still        The team even launched an official Bootrap Themes mar-
more narrowly, true client-side frameworks—simply because             ketplace [10], complementing an already massive theme
browsers and mobile devices are growing increasingly ca-              ecosystem.
pable, and because SPAs [single page applications] and the
like avoid sending data over the wire unnecessarily.)                 2. Web MVC: AngularJS
                                                                      As the web platform continues to mature, developers en-
1. Presentation: Bootstrap                                            joy increasingly well-crafted abstraction-distance from the
Let’s start at the top of the stack: the presentation layer,          still-markup-colored DOM. The work begun by XMLHttpRe-
the stuff developers and us folks both touch. Here the clear          quest reaches its zenith in modern Single-Page Applica-
winner remains Bootstrap [4]. The forecast looks outstand-            tions (SPAs), and the most popular SPA framework by far
ing, leaving old alternatives, such as Foundation [5], and            is AngularJS [11].
new kids, such as Material Design Lite [6], in the dust [7].             What’s so special about AngularJS? In a word: direc-
Bootstrap dominates usage trends on BuiltWith [8], and on             tives [12]. Just a little ng- can bring a (static, markup) tag
GitHub remains easily the most starred and most forked                to (dynamic, JavaScript-executing) life. (Dependency in-
framework of all time.                                                jection is pretty neat, too, and like many of Angular’s fea-
   And Bootstrap is still under active development. In Au-            tures aims to simplify maintenance and abstract more fully
gust 2015, Bootstrap celebrated its fourth birthday with              from the DOM.)
version 4 alpha release [9], a major simplification and ex-               The basic principle is just the perfectly reasonable sepa-
pansion of an already powerful feature set. The gist of               ration of declarative view from imperative domain logic, fa-
the update: Everything got more programmatic. Bootstrap               miliar to anyone who has scanned a POM file or wrestled
moved from Less to Sass, centralized all HTML resets in a             with an ORM (and hey, some of us used to enjoy XAML, too).
single module, tossed a load of style customizations direct-          This is thrilling, liberating, and a little weird all at once—giving
ly into Sass variables, and ES6-ified all JavaScript plugins.         HTML power it kinda really shouldn’t have.


Open Source Yearbook 2015       .. CC BY-SA 4.0 .. O  pensource.com                                                                    17
W O R K I N G
                     ..............   ..
                            .............
        Perhaps a bit sadly, the most aggressive concept behind             distributed batch processing job structures, then wrote a
     AngularJS—two-way data binding, which effortlessly keeps               famous paper [18] about it; then some Yahoo folks wrote
     views and models synced—is going away in Angular2 [13],                a Java framework (Hadoop [19]) that implemented Map­
     which is “very close” to beta release [14]. So a bit of the            Reduce and a distributed file system [20] to simplify data
     magic will disappear, but so will some massive performance             access for MapReduce tasks.
     headaches at scale and some hair-pullingly tough debug-                   For nearly a decade Hadoop dominated the “Big Data”
     ging (just think about two-way for a moment and feel the cliff         framework ecosystem, despite the limited problem space ad-
     drop out from under your feet)—a trade off that grows more             dressed (optimally) batch processing—partly because busi-
     valuable as page size and SPA complexity balloon.                      ness and scientific users were accustomed to batch analysis
                                                                            of large datasets anyway. But not all large datasets are op-
     3. Enterprise Java: Spring Boot                                        timally processed in batches. In particular, streaming data
     What’s so great about Java? Fast, mature, comprehensive                (such as sensor inputs) and data analyzed iteratively (like
     class library, gigantic ecosystem, write-once-run-every-               machine learning algorithms love to do) don’t like batch pro-
     where, active community—but not painless bootstrapping.                cessing. So dozens of new Big Data frameworks were born,
     Even hard-core Java developers resort to Ruby or Python                new programming models, application architectures [21],
     to write quick one-off programs (admit it). And yet Java con-          and data stores [22] gained traction (including a new cluster
     tinues to dominate the enterprise for those other reasons              management system [23], decoupled from MapReduce, for
     listed above.                                                          Hadoop itself).
        Enter Spring Boot, the boilerplate evaporator—a framework              But of all these new frameworks, Apache Spark [24] (de-
     that lets you fit a working Spring application in a single tweet:      veloped at Berkeley’s AMPLab) is the easy-choice 2015
                                                                            standout. Surveys (DZone report [25]; Databricks infograph-
                                                                            ic [26]; Typesafe report [27]) show huge growth in Spark
                                                                            adoption. GitHub commits have been growing linearly since
                                                                            2013, and Google Trends showsexponential (yes, literally)
                                                                            growth in searches over 2015 [28].
                                                                               So Spark is popular. But what does it do? Well, very fast
                                                                            batch processing; but this depends on one killer feature that
                                                                            allows for vastly more programming models than Hadoop.
                                                                            Spark makes data available in Resilient Distributed Datasets
                                                                            (RDDs) that remain in memory on multiple nodes after pro-
                                                                            cessing, but without replication (by storing info on how to
                                                                            recreate; compare to CQRS [29],pragmaticism [30], Kolm-
                                                                            ogorov complexity [31]). This (obviously) lets algorithms to
                                                                            iterate without reloading from a (s)lower rung in the distrib-
                                                                            uted memory hierarchy. And this means that batch process-
                                                                            ing need no longer suffer the indignity of the “long stroke”
                                                                            of Nathan Marz’s lambda architecture. RDDs even allow
                                                                            Spark to simulate true (push) stream processing by running
        No unpleasant XML config, no sloppy generated code.                 small batch jobs fast enough to keep latency within “effective
     How is this possible? Simple: Spring Boot has some pretty              streaming” bounds for many applications.
     strong opinions. Read that tweet above and suddenly it all
     makes sense! When you realize that the framework auto-                 5. Delivery: Docker
     matically spins up an embedded servlet container to han-               Okay, so Docker [33] isn’t a “framework” in the sense of
     dle incoming requests on port 8080—a decision you didn’t               “code library, generously defined, that imposes a specific set
     explicitly configure it to make, but a conventional (and fire-         of conventions to solve large and recurrent problem sets”.
     wall-friendly) call.                                                   But if frameworks are just things that let you write code at a
        How hot is Spring Boot? It’s by far the most forked [15] and        more suitable level of abstraction, then Docker is a frame-
     most downloaded Spring project (not counting the master                work extraordinaire. (Let’s call it an exoskeletal framework,
     framework itself). And in 2015, for the first time, Google             just to mix metaphors confusingly.) And it would feel funny to
     logged more searches for spring boot than for spring                   name “top 2015 anythings for developers” without including
     framework [16].                                                        Docker on the list.
                                                                              Why is Docker great? First, why are containers (earlier:
     4. Data processing: Apache Spark                                       FreeBSD Jail, Solaris Zones, OpenVZ, LXC) great? Sim-
     Once upon a time (in 2004), Google developed a pro-                    ple: isolation without a full operating system; or, safety and
     gramming model (MapReduce [17]) that generalized many                  convenience of a VM with far less overhead. But isolation


     18                                                                  Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O pensource.com
takes many forms (chroot comes to mind, or really any virtu-        [17]	Map/Reduce—A visual explanation: https://ayende.com/
al memory system), and it’s pretty easy to systemd-nspawn                 blog/4435/map-reduce-a-visual-explanation
without Docker. Only being able to isolate processes isn’t          [18]	MapReduce: Simplified Data Processing on Large Clusters:
enough. Why is Docker especially great [34]?                              http://static.googleusercontent.com/media/research.google.
   Two reasons: Dockerfiles (“the new tarballs”) add porta-               com/en//archive/mapreduce-osdi04.pdf
bility; and the Dockerfile format is now a de-facto standard.       [19]	What is Apache Hadoop?: https://hadoop.apache.org/
The first takes the pain out of application delivery (while         [20]	HDFS users guide: https://hadoop.apache.org/docs/stable/
earlier containers just created lighter VMs). The second                  hadoop-project-dist/hadoop-hdfs/HdfsUserGuide.html
makes container-sharing social (and not just on DockerHub           [21]	100 open source Big Data architecture papers for data
[35]). I can try your application without mucking around for              professionals: https://www.linkedin.com/pulse/100-open-
hours not trying your application. (Remember how freeing                  source-big-data-architecture-papers-anil-madan
apt-get felt?)                                                      [22]	Choosing the right NoSQL database for the job: a quality
                                                                          attribute evaluation: http://www.journalofbigdata.com/con-
Links                                                                     tent/2/1/18
[1]	Why Software Is Eating The World: http://www.wsj.com/arti-     [23]	Apache Hadoop NextGen MapReduce (YARN):
      cles/SB10001424053111903480904576512250915629460                    https://hadoop.apache.org/docs/current/hadoop-yarn/ha-
[2]	Augmenting Human Intellect: A Conceptual Framework:                  doop-yarn-site/YARN.html
      http://www.dougengelbart.org/pubs/augment-3906.html           [24]	Apache Spark: http://spark.apache.org/
[3]	Silver Bullet—Essence and Accident in Software Engineer-       [25]	Big Data, Business Intelligence, and Analytics, 2015
      ing: http://worrydream.com/refs/Brooks-NoSilverBullet.pdf           Edition: https://dzone.com/guides/big-data-business-intelli-
[4]	Bootstrap: http://getbootstrap.com/                                  gence-and-analytics-2015
[5]	Google trends—Bootstrap: https://www.google.com/               [26]	Spark Survey Results 2015:
      trends/explore#q=%2Fm%2F0j671ln                                     http://cdn2.hubspot.net/hubfs/438089/DataBricks_Sur-
[6]	Material Design Lite: http://www.getmdl.io/                          veys_-_Content/Spark-Survey-2015-Infographic.pdf
[7]	Bootstrap vs. Material Design Lite Google Trends:              [27]	Apache Spark—Preparing for the Next Wave of Re-
      https://www.google.com/trends/ex-                                   active Big Data: https://info.typesafe.com/COLL-
      plore#q=%2Fm%2F0j671ln%2C%20%2Fm%-                                  20XX-Spark-Survey-Report_LP.html?lst=PR&ls-
      2F0ll4n18%2C%20Material%20Design%20Lite&c-                          d=COLL-20XX-Spark-Survey-Trends-Adoption-Report
      mpt=q&tz=Etc%2FGMT%2B5                                        [28]	Apache Spark Google Trends: https://www.google.com/
[8]	Twitter Bootstrap Usage Statistics:                                  trends/explore#q=%2Fm%2F0ndhxqz
      http://trends.builtwith.com/docinfo/Twitter-Bootstrap         [29]	CQRS: http://martinfowler.com/bliki/CQRS.html
[9]	Bootstrap version 4 alpha release:                             [30]	Pragmatism: http://plato.stanford.edu/entries/peirce/
      http://v4-alpha.getbootstrap.com/                             [31]	Kolmogorov Complexity: http://people.cs.uchicago.edu/~-
[10]	Bootstrap themes: http://themes.getbootstrap.com/                   fortnow/papers/kaikoura.pdf
[11]	AngularJS: https://angularjs.org/                             [32]	Lambda Architecture: http://lambda-architecture.net/
[12]	AngularJS directives:                                         [33]	Docker: https://www.docker.com/
      https://docs.angularjs.org/guide/directive                    [34]	The 3 reasons why Docker got it right:
[13]	Why is the two-way data binding being dropped in Angular            http://techapostle.blogspot.com/2015/04/the-3-reasons-
      2? https://www.quora.com/Why-is-the-two-way-data-bind-              why-docker-got-it-right.html
      ing-being-dropped-in-Angular-2                                [35]	Docker Hub: https://hub.docker.com/
[14]	Highlights from AngularConnect 2015:
      http://angularjs.blogspot.com/2015/11/highlights-from-an-
      gularconnect-2015.html                                        Author
[15]	Spring: https://github.com/spring-projects                    John Esposito is Editor-in-Chief at DZone (dzone.com), hav-
[16]	Spring Boot vs. Spring Framework Google Trends: https://      ing recently finished a doctoral program in Classics while
      www.google.com/trends/explore#q=spring%20boot%2C%20           raising two cats. In a previous life, he was a VBA and Force.
      spring%20framework&cmpt=q&tz=Etc%2FGMT%2B5                    com developer, DBA, and network administrator.




Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O  pensource.com                                                                  19
W O R K I N G
                     ..............   ..
                            .............

     10 helpful tools for a
     sys admin’s toolbox                                                        BY BEN COTTON




                                                                          ownCloud
     Sys admins,                   no matter what platforms they
                                   work on, are awash in great
     open source software tools. In this article, we highlight well-
                                                                          Need a way to synchronize your KeePass database? own-
                                                                          Cloud’s recent 8.2 release brings improved design and
     known—and not-so-well-known—tools that have released                 ease of administration. For those who can’t or won’t use
     new versions in 2015.                                                third-party services, ownCloud [12] provides a great way
                                                                          to share documents, photos, calendars, and other data
     BlackBox                                                             securely. A community-developed application repository
     Managing secrets is tough, especially when the secrets need          allows admins to extend the capabilities in a wide variety
     to end up on a server. That’s why Stack Exchange [1] devel-          of ways, including receiving SMS messages from Android
     oped the BlackBox [2] utility. BlackBox uses GNU Privacy             phones. If you need to give your users (or yourself) the
     Guard [3] (GPG) to securely encrypt secrets, such as pass-           ability to collaborate while keeping control over your data,
     words and private keys, and store them in a version control          this is a can’t-miss package.
     system. BlackBox also provides a mechanism for configura-
     tion management tools (specifically Puppet [4]) to extract the       Wireshark
     secrets when needed.                                                 Any day that I have to resort to analyzing packet captures
        The plugin architecture of BlackBox makes it easy to ex-          is a bad day, but the venerable Wireshark [13] always helps
     tend. Although BlackBox was originally designed to work              make it a little easier. Although the project is almost old
     with git [5] repos, support for Mercurial [6], Subversion [7],       enough to vote in the US, Wireshark 2.0 [14] was released in
     and Perforce [8] has been added. BlackBox supports Linux,            November 2015. To say 2.0 is a major change is an under-
     OS X, and Windows (via Cygwin [9]), so it can be used in             statement: The UI was rewritten in Qt [15], and many of the
     mixed environments.                                                  interactions have been simplified. This new release brings a
                                                                          lot of improvements, but it’s still the same Wireshark you’ve
     KeePass                                                              known for years.
     Managing secrets gets a little easier when they don’t have
     to go anywhere. Years ago, I started using KeePass [10] be-          VirtualBox
     cause it had been ported to the Maemo [11] platform. If aban-        Desktop virtualization comes in many flavors these days, but
     doned mobile operating systems aren’t your thing, KeePass            I find that I always come back to Oracle’s VirtualBox [16].
     is available for Linux, OS X, Windows, Android, and iOS.             At work, having the same operating system and version of
        When I was a newly minted sys admin, I had a notebook             our software as a customer runs is valuable to me, so quick-
     of rarely used passwords that                                                                       and-easy virtual machines
     I kept in a locked safe. KeeP-                                                                      save me a lot of time. Virtu-
     ass is like that, except easier                                                                     alBox 5.0, released in July,
     to back up and sync across                                                                          added the ability to start VMs
     locations. KeePass entries                                                                          in “headless” mode, which
     store URLs, user names,                                                                             works for me because I gen-
     passwords, and free text. En-                                                                       erally SSH into my virtual
     tries can be sorted into groups                                                                     machines for interactions. 5.0
     and given custom icons for                                                                          also brings paravirtualization
     ease of use. Recent releases                                                                        support for better guest per-
     have focused on improving                                                                           formance, disk encryption,
     performance and UX.                                                                                 and USB 3 support.


     20                                                                Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O pensource.com
                   Visual Studio Code                                Docker
                     The editor wars had reached a somewhat          Certainly you’ve heard all about Docker [23] by now. Contain-
                     uneasy truce, but then a new kid appeared       ers are the next big thing in the devops world, and Docker is
                     on the block. Microsoft released Visual         the container platform. The 1.9 release, which shipped at the
                    Studio Code [17] for Windows, Linux, and         beginning of November, adds several new features. Multi-
                 OS X under the MIT license, which was big           host networking allows virtual networks to span hosts, giving
              news for a company typically seen as hostile to        admins more flexibility in their network topology. Persistent
       open source software. Although Visual Studio Code             storage support is improved, as well. Docker brings a level
       is designed as a code editor, don’t take that to mean         of flexibility and scalability to infrastructure that will have big
       it’s not useful for sys admins (after all, every sys ad-      impacts on sys admins and users in the coming year.
       min must do some coding). Visual Studio Code offers              Did we leave your favorite open source tool for sys admins
       built-in git interactions and Docker language support.        off the list? We’d love to hear about it: open@opensource.com.

       RRDtool                                                       Links
         Even if you’ve never interacted directly with RRDtool       [1]	Stack Exchange: http://stackexchange.com/
[18], chances are good you’ve used a project that incorpo-           [2]	Blackbox: https://github.com/StackExchange/blackbox
rates it. RRDtool is a great package for storing and graphing        [3]	GNU Privacy Guard: https://www.gnupg.org/
time series data, which is why it’s commonly used in perfor-         [4]	Puppet: https://puppetlabs.com/
mance monitoring systems, such as Cacti [19] and Xymon               [5]	Git: https://git-scm.com/
[20]. If static PNGs aren’t your thing, Tobi Oetiker has also de-    [6]	Mercurial: https://www.mercurial-scm.org/
veloped a JavaScript library [21] for generating RRD graphs.         [7]	Subversion: http://svnbook.red-bean.com/
                                                                     [8]	Perforce: https://www.perforce.com/
Mosh                                                                 [9]	Cygwin: https://www.cygwin.com/
Being away from the desk can’t stop the modern sys admin             [10]	KeePass: http://keepass.info/
from keeping the bits flowing. Unfortunately, not all networks       [11]	Maemo: http://maemo.org/
are created equal. If you’ve ever tried to do an SSH session         [12]	ownCloud: https://owncloud.org/
over a mobile phone tether or an overburdened conference             [13]	Wireshark: https://www.wireshark.org/
WiFi network, you know how painful it can be. Mosh eases             [14]	Wireshark 2.0 announced:
that pain. Mosh allows for roaming network connections, and                https://www.wireshark.org/news/20151118.html
makes slow connections more tolerable by locally echoing             [15]	Qt: http://www.qt.io/
as you type and allowing the connection to catch up. After           [16]	VirtualBox: https://www.virtualbox.org/
almost two years of silence, Mosh 1.2.5 was released in July.        [17]	Visual Studio Code: https://code.visualstudio.com/
Along with the usual bug fixes and improvements in platform          [18]	RRDtool: http://oss.oetiker.ch/rrdtool/
support, the latest release adds IPv6 support.                       [19]	Cacti: http://www.cacti.net/
                                                                     [20]	Xymon: http://xymon.sourceforge.net/
RackTables                                                           [21]	RrdGraphJS: https://github.com/oetiker/RrdGraphJS
In a small environment, the sys admin may know exactly               [22]	RackTables: http://racktables.org/
where every server is without having to think about it. In           [23]	What is Docker:
my first job, the department had about half a rack of gear.                https://opensource.com/resources/what-docker
Easy peasy. When I moved to a larger group, suddenly
there were 4,000 machines to know about. At that sort                Author
of scale, a tool like RackTables [22] becomes invaluable.            Ben Cotton is a meteorologist by training and a high-per-
RackTables is a tool for documenting hardware informa-               formance computing engineer by trade. Ben works at Cycle
tion, rack space, network configuration, and more. Think             Computing, leading the support engineering group. Ben is
of RackTables as that terrible spreadsheet you’re keep-              a community moderator for Opensource.com. Find him on
ing, except not terrible.                                            Twitter @FunnelFiasco.




Open Source Yearbook 2015      .. CC BY-SA 4.0 .. O  pensource.com                                                                   21
                         Best Couple
              Best Couple of 2015:
                      tar and ssh
                                                                                                                 BY DAVID BOTH




The best              couples
                      comple-
ment each other, and each
                                                                                                  So now I can use the results
                                                                                                  of that command on my local
                                                                                                  host because the standard
member of the couple con-                                                                         output data stream is sent
tributes unique and irreplace-                                                                    through the SSH tunnel to the
able parts to the whole. But                                                                      local host. OK, that is good,
some couples are very odd.                                                                        but what does it mean?
Such is the case with our                                                                           Let’s look at the tar com-
best couple this year: the tar                                                                    mand before answering that
and ssh commands.                                                                                 question.
   Wait—what?!
   Yup, that’s right, the tar and ssh commands work to-            tar
gether in interesting ways, especially when used with full         The tar command is used to make backups. The name
consideration of the capabilities of Standard I/O (STDIO),         tar stands for Tape ARchive, but the command can be
which is also known as standard streams.                           used with any type of recording media such as tape, hard
                                                                   drives, thumb drives and more. A command like the follow-
ssh                                                                ing can be used to create a backup of a home directory on
The ssh command is a secure and sophisticated form of ter-         the local host:
minal emulator that allows one to log in to a remote computer
to access a shell session and run commands. So I could             tar -cvf /tmp/home.tar /home
log in to a remote computer and run the ls command on the
remote computer. The results are displayed in the ssh termi-       This command created a tar file—also called a tarball—
nal emulator window on my local host. The Standard Output          named home.tar in the /tmp directory. That file is a backup of
(STDOUT) of the command is displayed on my terminal win-           everything in the home directory. Well, that’s nice, but also
dow, but it remains on the remote host and cannot be used          not very interesting because it is very common.
by the local host.                                                    But what can be interesting is, although many people do
   That is trivial and everyone does that. But the next step       not realize it, if the target output file is not specified using
is a bit more interesting. Rather than maintain a terminal         the -f option, the output of the tar command is sent directly
session on the remote computer and issuing multiple com-           to STDOUT:
mands, I can simply use a command like the following to
run a single command on the remote computer with the               tar -cv /home
results being displayed on the local host. This assumes that
SSH public/private keypairs (PPKP) are in use and I do not         That means that the complete output of the tar command—
have to enter a password each time I issue a command to            the files being backed up —is sent to the terminal, which
the remote host:                                                   opens up some interesting possibilities, such as redirecting
                                                                   the STDOUT data stream to a backup file. That looks like the
ssh remotehost ls                                                  following command:



22                                                              Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O  pensource.com
                                                                                                  BE
                                                                                             CO                  ST
                                                                                                          UP
                                                                                               20                    LE
                                                                                                             15

tar -cv /home > /tmp/home.tar


This command performs the same function as the first tar
command in this section, but in a somewhat different and
more interesting manner.

The Odd Couple
We can use a command similar to the following to back up
the home directory of the remote host to the /tmp directory
of that remote host:

ssh remotehost “tar -cvf /tmp/home.tar /home”
                                                                   we now have a command that can do backups of remote
Note that the command to be executed on the remote                 hosts to a local host.
host is enclosed in quotes to ensure that the correct com-            I use our couple of the year every day to perform backups.
mand is executed remotely; this is a bit of clarification for      I have a script that uses ssh and tar, along with SSH public
both the shell and for us humans. A slight change to this          key encryption, to perform backups of several remote hosts
command gives us one in which we simply redirect the               to an external USB hard drive on a local host. These two
output of the tar command to the /tmp directory on the             commands simplify a necessary task, and the best part is
remote host:                                                       that they are free and open source software—free as in beer,
                                                                   as well as free as in speech.
ssh remotehost “tar -cv /home > /tmp/home.tar”                        So let’s hear it for this year’s Opensource.com Best Cou-
                                                                   ple: tar and ssh.
This command produces exactly the same result as the pre-
vious one. In this case, the STDOUT data stream of the tar         Links
command is maintained entirely on the remote host and is           [1]	Standard streams:
redirected to the backup file. The next command, however,               https://en.wikipedia.org/wiki/Standard_streams
is the one that opens up many new possibilities. Can you see
what it does?
                                                                   Author
ssh remotehost “tar -cv /home” > /tmp/home.tar                     David Both is a Linux and open source advocate who re-
                                                                   sides in Raleigh, North Carolina. He has been in the IT in-
In this case, the STDOUT data stream from the tar com-             dustry for more than forty years, and taught OS/2 for IBM
mand is sent through the SSH connection to the local               (where he worked for more than 20 years). While at IBM,
host. This stream of data is then redirected to the backup         he wrote the first training course for the original IBM PC in
file /tmp/home.tar on the local host. By simply moving the         1981. David has written articles for OS/2 Magazine, Linux
trailing quote to the left, the command is changed so that         Magazine, Linux Journal, and Opensource.com.



Open Source Yearbook 2015       .. CC BY-SA 4.0 .. O
                                                   pensource.com                                                             23
COLL ABORATING
                                ..............   ..
                                       .............

    Top 10 open source projects
    of 2015                                     BY JEN WIKE HUGER




   We round up                        10 editor’s picks from the most
                                      popular projects in 2015.

    Apache Spark
    When it comes to open source big data processing, Hadoop
    is no longer the only name in the game. Apache Spark [1] is
    a general purpose distributed data processing tool that al-             community moderator David Both’s comprehensive review and
    lows users to process gigantic datasets across many nodes,              guide to the Dolphin file manager [9] from earlier this year.
    coordinating the processing so that users can concentrate
    on writing their queries in their language of choice. At the be-        Git
    ginning of this year, we announced a new world record [2] in            The world of version control sure has changed since git en-
    data processing set by Apache Spark, 100 TB of data in just             tered the scene 10 years ago as an open source alternative
    23 minutes. In the months that followed, interest in Apache             to BitKeeper for managing the Linux kernel’s source code.
    Spark has not slowed, and the project has gained many new               Since then, git [10] has rapidly become the most popular tool
    contributors and adopters.                                              for tracking changes to files, and not just for code. Git helps
                                                                            track changes to files where revisioning, branching, and col-
    Blender                                                                 laborative development can help improve the workflow of a
    The Blender Foundation is on a mission “to build a free and             project. Are you still working with an older source code man-
    open source complete 3D creation pipeline for artists and               ager, but thinking of moving to git? Here are some great tips
    small teams.” This year we’ve seen the power of Blender [3]             and resources for making the move.
    in the mix of Blender-related articles [4] we’ve run on Open-
    source.com. Writer and Blender aficionado Jason van Gum-                Mattermost
    ster (author of Blender for Dummies [5]) shared the majority            To borrow from our review [12] of this open source team chat
    of those stories, including reports from the October 2015               alternative:
    Blender Conference in Amsterdam.                                           “Mattermost is [a] very modern approach to team chat.
                                                                               Currently in its beta release, Mattermost is written in Gol-
    D3                                                                         ang with a good chunk of JavaScript under the React
    When you are working with large amounts of raw data, some-                 framework. It features private and public chats, including
    times a visualization is the best way to interpret what you’re             one on one communication, good archival support, and
    looking at. When you make that visualization available on                  a very similar interface to Slack, including most of the
    the web, you can add new levels of interactivity to display                features you’ve come to expect there. In fact, if you’re al-
    information for an audience in an easy-to-understand format.               ready using Slack, there’s an easy import function which
    One tool for making this easy is D3 [6], a JavaScript-based                lets you move over your current channels and archives.
    data visualization framework that provides options for show-               Mattermost also integrates into your organization’s ex-
    ing data in charts, graphs, plots, maps, and more. We pro-                 isting LDAP or Active Directory authentication systems.”
    filed D3 earlier this year as a part of our roundup of 8 excel-
    lent data visualization tools [7].                                      Piwik
                                                                            Piwik [13] is an open source alternative to Google Analytics,
    Dolphin                                                                 and according to writer Scott Nesbitt, chances are it packs
    If you spend a lot of time managing files on your computer,             the features you need.
    you’re going to want a file manager that suit your needs and               Nesbitt writes [14]: “Those features include metrics on the
    gives you features that let you quickly and easily take control of      number of visitors hitting your site, data on where they come
    your file system. Dolphin [8], the default file manager in many         from (both on the web and geographically), from what pages
    KDE-based distributions, is a powerful tool to help you orga-           they leave your site, and the ability to track search engine
    nize files. For more on Dolphin, take a look at Opensource.com          referrals. Piwik also has a number of reports and you can


    24       Open Source Yearbook 2015        .. O pensource.com         Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O pensource.com
customize the dashboard to view the metrics that you want          [3]	Blender: https://www.blender.org/
to see. To make your life easier, Piwik integrates with over       [4]	Opensource.com Blender articles:
65 content management, ecommerce, and online forum sys-                  https://opensource.com/tags/blender
tems like WordPress, Magneto, Joomla!, and vBulletin using         [5]	Blender for Dummies: http://blenderbasics.com/
plugins. With anything else, you just need to add a tracking       [6]	D3: http://d3js.org/
code to a page on your site. A number of web hosting firms         [7]	8 excellent open source data visualization tools:
offer Piwik as part of their one-click install packages. You can         https://opensource.com/life/15/6/eight-open-source-da-
test drive [15] Piwik or use a hosted version [16].”                     ta-visualization-tools
   Fun fact: Maker of the LulzBot 3D printer, Aleph Objects,       [8]	Dolphin: https://userbase.kde.org/Dolphin
uses Piwik to run their analytics [17].                            [9]	A comprehensive guide to Dolphin, a KDE file manager:
                                                                         https://opensource.com/life/15/8/comprehensive-guide-dol-
R                                                                        phin-file-manager
In the era of big data, now may be the time to learn R [18],       [10]	Git: https://git-scm.com/
which has become the programming language of choice for            [11]	What to know before transitioning your team to Git:
data scientists and others interested in statistical computing           https://opensource.com/business/15/7/interview-em-
and graphics, and is touted by influencers in big data [19] like         ma-jane-hogbin-westby-git
Revolution Analytics. In 2015, the R Consortium [20] became        [12]	4 open source alternatives to Slack for team chat:
a Linux Foundation Collaborative project, created to provide             https://opensource.com/business/15/9/alterna-
support for the development of R-Hub, a new code-hosting                 tives-slack-team-chat
platform for developing and distributing packages for R.           [13]	Piwik: http://piwik.org/
                                                                   [14]	Top 3 open source alternatives to Google Analytics:
SugarCRM                                                                 https://opensource.com/business/14/10/
SugarCRM [21] is the 800-pound gorilla in the open source                top-3-open-source-alternatives-google-analytics
customer relationship management space, and has previ-             [15]	Piwik demo: http://demo.piwik.org/index.
ously been featured as one of our top 5 CRM tools [22]. The              php?module=CoreHome&action=index-
community edition of SugarCRM can be used out of the box                 &idSite=7&period=day&date=yesterday#/module=-
as a complete solution for organizations hoping to do a bet-             Dashboard&action=embeddedIndex&idSite=7&period=-
ter job of keeping their contacts manageable, or who want                day&date=yesterday&idDashboard=1
to turn a list of names into something actionable. Complete        [16]	Piwik Cloud: http://piwik.org/hosting/
with huge list of features and a pluggable infrastructure that     [17]	Open ethos powers Aleph Objects’ success:
allows for even more customization, SugarCRM is a great                  https://opensource.com/business/15/11/open-ethos-pow-
solution for organizations that want to get a handle on their            ers-lulzbots-success
contacts. (Editor’s note: SugarCRM 6.5 Community Edition           [18]	What is R?: https://www.r-project.org/about.html
is the most recent open source version of SugarCRM and is          [19]	Why now is the time to learn R: https://opensource.com/
still widely used. Open source alternatives built on Sugar-              business/14/12/r-open-source-language-data-science
CRM CE are growing in popularity.)                                 [20]	R Consortium: https://www.r-consortium.org/
                                                                   [21]	SugarCRM: https://www.sugarcrm.com/
Vagrant                                                            [22]	Top 5 open source customer relationship management
In a nutshell, Vagrant [23] is a command-line tool for launch-           tools: https://opensource.com/business/14/7/top-5-open-
ing and configuring virtual machines. With Vagrant, environ-             source-crm-tools
ments are reproducible and portable, and the data that de-         [23]	Vagrant: A powerful tool for configuring development envi-
fines the environment is stored in text files, making it easy to         ronments: https://opensource.com/business/15/9/ato-inter-
version control your environments and manage your virtual                view-seth-vargo
machines just as you would code. Vagrant allows you to set
up development environments on your local machine that             Authors
are nearly identical to your production environment, regard-       Jen Wike Huger is Content Manager at Opensource.com, where
less of what your host operating system is. Plus, learning         she manages the site’s publication calendar, its editing team,
how to get started with Vagrant is easy.                           and its community of writers. Follow her on Twitter @jenwike.
   Thanks to Jason Baker for his help on this article.             Jason Baker is passionate about using technology to make
                                                                   the world more open. His interests range from software de-
Links                                                              velopment to bringing sunlight to local governments. Jason
[1]	Apache Spark: http://spark.apache.org/                       is particularly interested in data visualization and analysis,
[2]	World record set for 100 TB sort by open source and           DIY/maker culture, simulations/modeling, geospatial tech-
      public cloud team: https://opensource.com/business/15/1/     nologies, and cloud computing (especially OpenStack).
      apache-spark-new-world-record                                Follow him on Twitter @jehb.


Open Source Yearbook 2015      ....CCO BY-SA 4.0. .. O25 .com
                                    pensource com pensource                                                                     25
COLL ABORATING
                               ..............   ..
                                      .............

    Top 5 open source
    community metrics to track                                                                 BY JESUS M. GONZALEZ-BARAHONA



   So you decided                             to use metrics to
                                              track your free, open
    source software (FOSS) community. Now comes the big
    question: Which metrics should I be tracking?
       To answer this question, you must have an idea of what
    information you need. For example, you may want to know
    about the sustainability of the project community. How quick-
    ly does the community react to problems? How is the com-
    munity attracting, retaining, or losing contributors? Once
    you decide which information you need, you can figure out
    which traces of community activity are available to provide it.
    Fortunately, FOSS projects following an open development
    model tend to leave loads of public data in their software           For example, the number of commits gives a first idea about
    development repositories, which can be analyzed to gather            the volume of the development effort. The number of tickets
    useful data.                                                         opened provides insight into how many bugs are reported
       In this article, I’ll introduce metrics that help provide a       or new features are proposed. The number of messages in
    multi-faceted view of your project community.                        mailing lists or posts in forums gives an idea of how much
                                                                         discussion is being held in public.
    1. Activity
    The overall activity of the community and how it evolves             2. Size
    over time is a useful metric for all open source communities.        The size of the community is the number of people par-
    Activity provides a first view of how much the community is          ticipating in it, but, depending on the kind of participation,
    doing, and can be used to track different kinds of activity.         size numbers may vary. Usually you’re interested in active
                                                                         contributors, which is good news. Active people may leave
   Number of commits and number of merged changes after code
                                                                         traces in the repositories of the project, which means you
   review in the OpenStack project, as found in the OpenStack
   Activity Dashboard [1]. Evolution over time (weekly data).            Number of authors and number of posters in mailing lists in
                                                                         the Xen project, as found in the Xen Project Development
                                                                         Dashboard [2]. Evolution over time (monthly data).




    26       Open Source Yearbook 2015      .. O pensource.com        Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O pensource.com
can count contributors who are active in producing code by         of the community varies. The community aging chart [4]
looking at the Author field in git repositories, or count people   nicely illustrates these exchanges over time. The chart is
participating in the resolution of tickets by looking at who is    structured as a set of horizontal bars, two per “generation”
contributing to them.                                              of people joining the community. For each generation,
   This basic idea of activity (somebody did something) can        the attracted bar shows how many new people joined the
be extended in many ways. One common way to track activ-           community during the corresponding period of time. The
ity is to look at how many people did a sizable chunk of the       retained bar shows how many people are still active in the
activity. Generally most of a project’s code contributions, for    community.
example, are from a small fraction of the people in the proj-         The relationship between the two bars for each generation
ect’s community. Knowing about that fraction helps provide         is the retention rate: the fraction of people of that genera-
an idea of the core group (i.e., the people who help lead the      tion who are still in the project. The complete set of attracted
community).                                                        bars show how attractive the project was in the past. And
                                                                   the complete set of the retention bars shows the current age
3. Performance                                                     structure of the community.
So far, I have focused on measuring quantities of activities
                                                                   Community aging chart for the Eclipse community, as shown
and contributors. You also can analyze how processes and
                                                                   in the Eclipse Development Dashboard [4]. Generations are
people are performing. For example, you can measure how            defined every six months.
long processes take to finish. Time to resolve or close tickets
shows how the project is reacting to new information that
requires action, such as fixing a reported bug or implement-
ing a requested new feature. Time spent in code review—
from the moment when a change to the code is proposed
to the moment it is accepted—shows how long upgrading a
proposed change to the quality standards expected by the
community takes.
   Other metrics deal with how well the project is coping with
pending work, such as the ratio of new to closed tickets, or
the backlog of still non-completed code reviews. Those pa-
rameters tell us, for example, whether or not the resources
put into solving issues is enough.
Ratio of tickets closed by tickets opened, and ratio of change
proposals accepted or abandoned by new change proposals
per quarter. OpenStack project, as shown in the OpenStack
Development Report, 2015-Q3 [3].

                                                                   5. Diversity
                                                                   Diversity is an important factor in the resiliency of communi-
                                                                   ties. In general, the more diverse communities are—in terms
                                                                   of people or organizations participating—the more resilient
                                                                   they are. For example, when a company decides to leave a
                                                                   FOSS community, the potential problems the departure may
                                                                   cause are much smaller if its employees were contributing
                                                                   5% of the work rather than 85%.

                                                                   Pony and Elephant Factor for several FOSS projects in the
                                                                   area of cloud computing, as presented in The quantitative
                                                                   state of the open cloud 2015 (slides) [8].




4. Demographics
Communities change as contributors move in and out. De-
pending on how people enter and leave a community over
time, the age (time since members joined the community)


Open Source Yearbook 2015      ....CCO BY-SA 4.0. .. O27 .com
                                    pensource com pensource                                                                     27
COLL ABORATING
                                 ..............   ..
                                        .............
        The Pony Factor [6], a term defined by Daniel Gruno [7] for         [5]	Eclipse Development Dashboard:
     the minimum number of developers performing 50% of the                      http://dashboard.eclipse.org/demographics.html
     commits. Based on the Pony Factor, the Elephant Factor is              [6]	Pony Factor Math:
     the minimum number of companies whose employees perform                     https://ke4qqq.wordpress.com/2015/02/08/pony-fac-
     50% of the commits. Both numbers provide an indication of                   tor-math/
     how many people or companies the community depends on.                 [7]	Daniel Gruno: https://twitter.com/humbedooh
        There are many other metrics to help measure a commu-               [8]	The quantitative state of the open cloud 2015 (slides):
     nity. When determining which metrics to collect, think about                https://speakerdeck.com/jgbarah/the-quantitative-state-of-
     the goals of your community, and which metrics will help you                the-open-cloud-2015-edition
     reach them.

     Links                                                                  Author
     [1]	OpenStack Activity Dashboard: http://activity.openstack.org/      Jesus M. Gonzalez-Barahona is co-founder of Bitergia
     [2]	Zen Project Development Dashboard:                                (bitergia.com), the software development analytics com-
          http://projects.bitergia.com/xen-project-dashboard/browser/       pany specializing in the analysis of free and open source
     [3]	OpenStack Development Report, 2015-Q3:                            software projects. He also teaches and researches in Uni-
          http://activity.openstack.org/dash/reports/2015-q3/pd-            versidad Rey Juan Carlos in Spain as part of the GSyC/
          f/2015-q3_OpenStack_report.pdf                                    LibreSoft research group. His interests include the study
     [4]	Measure your open source community’s age to keep it               of software development communities, and he focuses on
          healthy: http://radar.oreilly.com/2014/10/measure-your-           quantitative and empirical studies of these groups. Find him
          open-source-communitys-age-to-keep-it-healthy.html                on Twitter @jgbarah.




W R I T E      F O R        U S
                                    ..............   ..
                                           .............
     Would you like to write for Opensource.com? Our editorial calendar includes upcoming themes, community columns, and
     topic suggestions: https://opensource.com/calendar

     Learn more about writing for Opensource.com at: https://opensource.com/writers

     We're always looking for open source-related articles on the following topics:

             Apache: Stories and open source updates about Apache Software Foundation projects.
             Big Data: Open source big data tools, stories, communities, and news.
             Command-line tips: Tricks and tips for the Linux command-line.
             DevOps: DevOps best practices, case studies, and “getting started” stories.
             Diversity: How you increased diversity in your community, open source-related grants and scholarship
             opportunities, tips for attracting a more diverse pool of contributors, how increasing diversity helped your
             project, and other practical advice for fostering inclusive communities.

             Geek Culture: Open source-related geek culture stories.
             Hardware: Open source hardware projects, maker culture, new products, howtos, and tutorials.
             HFOSS: Humanitarian open source project stories, news, communities, and updates.
             Content management systems: Howtos and articles on Drupal, ezPublish, Joomla, TYPO3, WordPress,
             and other open source content management systems.

             Education: Open source projects, tools, solutions, and resources for education.
             Science: Open source tools, programs, projects, and howtos for science.


     28                                                                  Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O  pensource.com
                                                                            ....................     COLL ABORATING




                   Diversity in open source
                      highlights from 2015                                                     BY CINDY PALLARES-QUEZADA




The pool of people                             participating in
                                               open source
communities still lacks diversity, but the good news is that
                                                                   free and open source software licenses, discussed barri-
                                                                   ers and accessibility within free and open source projects,
                                                                   and shed light on paid internships and jobs in free and
many people, projects, and organizations are working to            open source software.
improve it. I’ve collected a few highlights from 2015 efforts
to increase diversity in open source communities. Which            Grace Hopper Celebration of Women
2015 diversity in open source stories would you add to             in Computing embraces open source
the list?                                                          Grace Hopper Celebration of Women in Computing [4], the
                                                                   world’s largest gathering of women technologists, hosted
Outreachy grows its diversity internship program                   an Open Source Day [4]. Attendees interested in helping
Outreachy [1], a member project of Software Freedom                free and open source organizations such, as OpenStack,
Conservancy [2], expanded its internship program to be             Mozilla, Cloudera, and OpenHatch, had a chance to con-
open to people of color underrepresented in tech in the            tribute. The track included numerous presentations and
U.S. The program has been a great success in providing             panels on security, humanitarian efforts, open hardware,
paid remote internships in free and open source organi-            infrastructure, and more by women working in free and
zations for women, trans men, and genderqueer people               open source software. The event helped teach beginners
across the globe.                                                  about decentralization, software licenses, and the open
The expansion was driven by demographic data collected             source philosophy.
and released by leading U.S. tech companies, which veri-
fied a lack of racial and ethnic diversity among employees         Ada Initiative ends, but its work continues
in technical roles in comparison to U.S. population demo-          The Ada Initiative, which supported women in open tech-
graphics. Outreachy organizers have observed the same              nology and culture through unconferences, workshops,
disparity of demographic representation in free and open           and more, announced its shutdown [6] in 2015. As an ef-
source communities and                                                                           fort to preserve and contin-
conferences, and they hope                                                                       ue the work started by the
to create more opportunities                                                                     organization, the Ada Initia-
for other underrepresented                                                                       tive published an AdaCa-
groups in the future.                                                                            mp toolkit [7] and Imposter
                                                                                                 Syndrome training under a
Minority opportunities in                                                                        Creative Commons Attri-
open source                                                                                      bution ShareAlike license,
Richard Tapia Celebration of                                                                     making them freely avail-
Diversity in Computing [3], a                                                                    able for use by anyone.
conference aimed at provid-
ing a supportive networking                                                                      Defining a diverse
environment for underrepre-                                                                      community
sented groups across the broad range of computing and              Sarah Sharp [8], open graphics developer at Intel and for-
information technology, hosted a panel called “Opportu-            mer Linux Kernel developer, created a step-by-step break-
nities in open source” that introduced many students to            down [9] of a diverse community. In it she mentions how


Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                           29
COLL ABORATING
                             ..............   ..
                                    .............
    a good open source community includes a good code of              Links
    conduct, has ways of handling burnout, values non-techni-         [1]	Outreachy: https://www.gnome.org/outreachy/
    cal skills, and has mentorship programs. It’s a great place       [2]	Software Freedom Conservancy: https://sfconservancy.org/
    to start when trying to learn about diversity in open source      [3]	ACM Richard Tapia Celebration of Diversity in Computing:
    communities.                                                            http://tapiaconference.org/
                                                                      [4]	Grace Hopper Celebration of Women in Computing:
    OpenStack gets a diversity working group                                http://ghc.anitaborg.org/
    The OpenStack Foundation’s board of directors supported           [5]	Open Source Day 2015: http://ghc.anitaborg.org/confer-
    a diversity working group [10]. The group will sponsor and              ence-overview/open-source-day-2015/
    create programs to encourage diversity by identifying and         [6]	Ada Initiative organization to end, but its work will continue:
    removing barriers to joining and contributing to the Open-              https://opensource.com/business/15/8/ada-initiative-legacy
    Stack community. The group already started to target gender       [7]	AdaCamp Toolkit: http://adacamp.org/
    and geographic diversity and is planning on expanding the         [8]	Sarah Sharp: https://twitter.com/sarahsharp
    OpenStack code of conduct [11].                                   [9]	What makes a good community?: http://sarah.thesharps.
                                                                            us/2015/10/06/what-makes-a-good-community/
    Red Hat presents its first Women in                               [10]	OpenStack Diversity Working Group:
    Open Source Awards                                                      https://wiki.openstack.org/wiki/Diversity
    Red Hat Women in Open Source Awards [12] celebrate wom-           [11]	OpenStack Foundation Community Code of Conduct:
    en who are already contributing to open source and shine a              https://www.openstack.org/legal/community-code-of-conduct/
    light on them as role models for others. The awards have          [12]	Red Hat Women in Open Source Awards:
    two categories: “community” for professionals and “academ-              http://www.redhat.com/en/about/women-in-open-source
    ic” for students. Red Hat judges reviewed more than 100           [13]	Kesha Shah: https://twitter.com/geekkygirl
    community-submitted nominations and selected five finalists       [14]	Systers: http://anitaborg.org/get-involved/systers/
    in each category. The open source community then voted on         [15]	BRL-CAD: http://brlcad.org/
    the winners. The winners were Sarah Sharp, an open graph-
    ics developer at Intel, and Kesha Shah [13], who contributed      Author
    to Systers [14] and BRL-CAD [15] through Google Summer            Cindy Pallares-Quezada is an Outreachy alumna and a
    of Code. Both Sarah and Kesha have done extensive men-            Red Hat intern working on OpenStack. She enjoys helping
    toring in the community. Voting for the 2015 Women in Open        contributors get started on open source and making things
    Source Award start in February.                                   with open source hardware.




    30                                                             Open Source Yearbook 2015      .. CC BY-SA 4.0 .. O   pensource.com
                                                                            ....................       COLL ABORATING




                         2015 was a good year
                       for creating the world’s
                           ‘missing maps’ with
                               OpenStreetMap                                                                 BY DRISHTIE PATEL



The Missing Maps                             project [1], which
                                             launched in 2014,
aims to literally and figuratively put more than 20-million at-
risk people on the map using OpenStreetMap (OSM) [2] as
a platform. We need to fill in “missing maps” before the next
disaster strikes, ensuring the maps have detail sufficient for
emergency responders to hit the ground running.
   OpenStreetMap is an open and free source of geographic
data. Anyone with a username can add, edit, or update data,
so the Missing Maps project is community driven and focus-
es on local knowledge. Remote volunteers around the world
use satellite imagery to trace features, such as roads and
buildings. Community members and volunteers in the area            vulnerable to disasters, such as flooding, making it easier
then use the base map to add local data to these shapes, in-       to plan future disaster risk-reduction activities. The Zim-
cluding street names, addresses, building types, and points        babwe Red Cross can now plan to serve areas that are
of interest.                                                       deemed high priority based on survey and map results
   As we look back at 2015, here are a few success stories         and target specific homes that require help immediately.
from the Missing Maps project.                                     Now with detailed information including house addresses,
                                                                   the process is much more efficient.
Zimbabwe                                                              Community mapping was conducted to complement a
One area Missing Maps started working in is Dzivarasekwa,          baseline survey and urban risk profile, and has helped to in-
a high-density urban township in Harare’s North District in        form the activities that will be implemented in the next stages
Zimbabwe. Community mapping in Dzivarasekwa was per-               of the resilience project.
formed as part of an urban disaster risk-reduction project,
with the goal of strengthening community safety and resil-
ience to reduce the number of deaths, injuries, and socio-
economic impacts caused by urban disasters.
   Community discussions and the baseline survey result-
ed in guided decisions about which details to collect during
the community mapping activity. Volunteers in Dzivarase-
kwa surveyed more than 8,000 buildings across 7 square
kilometers. One output of the mapping is shown below.
The results showed a correlation between housing quality
and building material type, with concrete homes observed
to be in worse condition than brick homes. When com-
bined, this data provided the locations of residents most


Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                               31
COLL ABORATING
                              ..............   ..
                                     .............
    Tanzania                                                           Rwanda
    Ushirombo is a predominantly rural area in northwest Tanza-        Imagine not being able to use your phone to look up di-
    nia, with about 84% of the residents relying on agriculture as     rections, nearby hospitals, restaurants, or just about any
    the primary livelihood source. The rest depend on activities       answer to a question at the tips of your fingers. For many
    such as small-scale gold mining, lumbering, and informal mi-       people this is reality, because most of the world is not on
    cro-enterprises.                                                   the map. Thousands of towns and cities are invisible on
      Community discussions and a baseline survey revealed             the world map. This makes it difficult for disaster respond-
    waterborne and water-related disease is one of the prima-          ers to come to residents’ aid when an earthquake, land-
    ry issues in this region because most of the residents are         slide, or typhoon strikes.
    dependent on collecting water from traditional wells and              Communities in Cyahinda, Rwanda, an agricultural re-
    natural springs that are neither clean nor safe. Therefore,        gion in the Nyaruguru district near the Burundi border, face
    recording water and sanitation points was a priority during        challenges such as poor health and sanitation, environ-
    community mapping.                                                 mental degradation, and disaster risks related to landslides
      Missing Maps trained volunteers and community leaders            and drought.
    on how to use Field Papers [3] and OpenMapKit [4] to col-
                                                                       American Red Cross staff setting up drop off and pick up
    lect data. Mappers were able to collect data in Ushirom-
                                                                       locations for volunteer mappers in Cyahinda, Rwanda during
    bo quickly because buildings are within close proximity to
                                                                       community mapping in the field. Copyright American Red Cross.
    each other on flat terrain; however, many challenges still
    hindered the collection process, such as the lack of road
    names and formal building addresses. Old satellite imagery
    also contributed to the problem because the base maps on
    Field Papers and the OpenMapKit app did not match the
    reality on the ground.

   Volunteers using Field Papers and OpenMapKit to collect local
   data that will be added to OpenStreetMap. Copyright American
   Red Cross.




                                                                          Low-density villages and collections of buildings are
                                                                       spread across hills terraced for small-scale farming, con-
                                                                       nected by dirt roads and tracks. The Rwanda Red Cross
                                                                       and American Red Cross spent two weeks in April mapping
                                                                       the area. Field mapping in Cyahinda’s rural setting was also
                                                                       slower than other mapping projects due to the size of the
                                                                       area, wide distribution of buildings, and tiring walks through
                                                                       the hilly terrain.
                                                                          The validated base data was uploaded to OpenStreetMap,
    Despite these challenges, the participation of community           while the project-specific data is being used to create maps
    leaders in the community-mapping process led to the suc-           to assist with planning and decision-making. For example,
    cess of mapping Ushirombo. Leaders such as village chiefs          residents may decide to look at the distribution of mudslides
    joined the field mapping expeditions to help navigate and          to decide where to safely build their homes, schools, and
    manage community relationships. This aided data quali-             churches.
    ty and collection efficiency because mappers were able to
    continue collecting data while community leaders spent time        South Africa
    answering questions from residents.                                Khayelitsha is home to roughly 400,000 people covering an
       Map data is now used by the Tanzania Red Cross and              area of 39 square kilometers made up of old formal areas
    American Red Cross to make programmatic decisions for an           and a majority newer informal areas. Red Cross partners
    urban risk reduction program in the area.                          have been working in the area and looked into the major



    32                                                               Open Source Yearbook 201   .. CC BY-SA 4.0 .. O pensource.com
concerns the community is facing. Fires are at the top of          Khayelitsha to support the community in mapping the area
the list. Fires regularly occur as a result of indoor stove        for better program planning and decision making. Remote
use, trash burning, faulty wires, and residents trying to          tracing was done ahead of time by digital humanitarians
keep warm. Rapid, unplanned development results in close           around the world using OpenStreetMap and this was
construction of homes, which helps fires spread quickly.           hugely beneficial, giving us a fairly accurate foundation of
Pathways between homes are narrow and often blocked,               data to add to.
making evacuations chaotic and dangerous. Residents                   Volunteers on the ground were trained to add local data
commonly do not know who to call for firefighting assis-           such as street names, house numbers, points of interest, and
tance, and if firefighters are available, they have a difficult    water sources among other features. The area is now full for
time finding and responding to fires.                              relevant information, not just for this project, but data is be-
                                                                   ing used by other humanitarian organizations working in the
Volunteers using Field Papers and GPS to collect local data
                                                                   area and more importantly the community living in Khayelit-
that will be used for programs and added to OpenStreetMap.
                                                                   sha. The American Red Cross GIS has created large maps
Copyright American Red Cross.
                                                                   of the different sections to print and share with the communi-
                                                                   ties. The volunteers are continuing to gather data, collecting
                                                                   the locations of the fire sensors to then overlay OSM data to
                                                                   analyze the coverage of the project.

                                                                   Links
                                                                   [1]	Missing Maps: http://www.missingmaps.org/
                                                                   [2]	OpenStreetMap:
                                                                        https://www.openstreetmap.org/#map=5/51.500/-0.100
                                                                   [3]	Field Papers: http://fieldpapers.org/
                                                                   [4]	OpenMapKit:
                                                                        https://github.com/americanredcross/openmapkit



                                                                   Author
                                                                   Drishtie Patel is passionate about open data and community
  Red Cross partners are piloting a project to solve this          engagement. As a GIS analyst, and as Missing Maps Proj-
issue: a low-cost, meshed network of smart home sen-               ect Coordinator at the American Red Cross, she works to
sors affixed to each home within the informal settlement.          empower local vulnerable communities by developing and
The American Red Cross GIS team recently set out to                strengthening their skills using the OpenStreetMap platform.




Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                                33
                          Most likely to succeed
                          10 projects to fork
                          in 2016                                                                                BY JASON BAKER




                                                                      The Art of Command Line
2015            was a year of many new open source projects
                hitting the scene with a splash. From enterprise
solutions to home brewed open source concoctions, many
                                                                      Have you always wanted to become a command-line nin-
                                                                      ja? Who hasn’t wanted to be able to effortlessly punch out
of the projects released as open source software this year            a seemingly cryptic series of commands to instantly bend
have made a huge impact on the world of computing in a                their machine to their will? Okay, this repository isn’t going
very short amount of time. While flash stardom isn’t always           to replace years of training and practice to instantly turn you
the best predictor of longevity, we think these 10 projects just      into an elite system administrator, but if you’re a new Linux
might have come onto the scene with enough momentum to                user or just one who hasn’t spent much time behind a ter-
continue their success in the new year.                               minal window, you might want to check this out. The Art of
   Fortunately, it’s easy to measure developer interest for           Command Line [5] isn’t a how-to or tutorial in its own right,
projects being released on GitHub. This list is a compila-            but more of a study guide or a body of knowledge for those
tion of some of our favorites from the most starred releases          seeking to upgrade their terminal-fu. It’s a giant list of things
from GitHub repositories created in the past year with open           to learn in order to become the master of the shell, and avail-
source licenses. They piqued our curiosity, and if they pique         able under a Creative Commons Attribution-ShareAlike 4.0
yours too, why not take a look? Clone your favorite and try           license [6].
it out. And if you want to join in on the action, why not fork a
copy, contribute some changes, and help make these proj-              Material Design Lite
ects continue to succeed in the new year.                             The Material Design Lite [7] components by Google are de-
                                                                      signed to make it easy to add a material design look and
React Native                                                          feel to your website and web applications. What is material
React Native [1] is a JavaScript framework that makes it easy         design? It’s a consistent look and feel designed to give vir-
for developers to create native applications for Android or iOS       tual components, from buttons to toggles to input fields, a
using the same principles that React has enabled them to use          visual style which feels intuitive to interact with through the
for web applications. React, created by Facebook, was first re-       careful use of light, shadows, movement, and interactivity.
leased in 2013, and the native framework was made available           You’ll immediately recognize it as the look of Google-made
earlier this year with much anticipation. Already receiving over      web applications. Material Design Lite is released under the
4,000 forks on GitHub and almost 25,000 stars, React Native           Apache 2.0 license [8].
has already racked up over 450 individual contributors to its
repository. React Native is available under a BSD license [2].        TensorFlow
                                                                      TensorFlow [9], another contribution to this list from Google,
Swift                                                                 is an open source library for numerical computation using
Swift [3], a new programming language by Apple designed to            data flow graphs. It connects operations and data with nodes
be a successor to Objective-C as the language of choice for           and graph edges, much in the same way the neural networks
writing applications for Apple’s platforms and beyond, was            of the human brain are organized. TensorFlow is therefore a
released to the world in 2014. But earlier this month, Apple          framework for building machine learning applications, mak-
took the step of releasing the code base as open source un-           ing it ideal for complex applications like language processing
der an Apache 2.0 license [4]. Swift is a compiled language,          which are difficult to impossible to develop with traditional al-
and many efforts have been made to optimize it for speed,             gorithmic paradigms. TensorFlow is released as open source
readability, and modern programming techniques.                       under the Apache 2.0 license [10].


34                                                                 Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O  pensource.com
                                                                                                                            M
Dragula                                                                                                              LIK OST
                                                                                                                     SU ELY T
                                                                      the input images. Packaged with
Dragula [11] sums up its tag line as “Drag and drop so simple         an IPython notebook to make ex-
it hurts.” We hope it doesn’t hurt, but Dragula does make it          perimenting easy, this repository                CC     O
                                                                                                                          EE
easy to create web applications with drag and drop functional-        lets even novice users turn im-                        D
ity without relying on huge frameworks or complicated custom          ages into dream-like landscapes.
code. Just insert a few lines of code into your application to        Deepdream is released under
tell Dragula which components are draggable, and it handles           an Apache 2.0 license [20].
everything else: clicks, touch interaction, shadows, even the
sort order. Dragula is available under an MIT license [12].           Links
                                                                      [1]	React Native:
Redux                                                                       https://github.
Redux [13] is a tiny JavaScript library which provides the                  com/facebook/
ability to create predictable state containers for your applica-            react-native
tions. By imposing a few artificial constraints, and integrating      [2]	React Native li-
seamlessly with other frameworks like React, you can easily                 cense: https://github.
build applications with a model-view-controller (MVC) archi-                com/facebook/react-native/
tecture that behave consistently across different platforms                 blob/master/LICENSE
and devices, and help to make the testing of these applica-           [3]	Swift: https://github.com/apple/swift
tions easier and more predictable. Redux is made available            [4]	 license: https://github.com/apple/swift/blob/master/LICENSE.txt
as open source under an MIT license.                                  [5]	The Art of Command Line:
                                                                            https://github.com/jlevy/the-art-of-command-line
Big List of Naughty Strings                                           [6]	Attribution-ShareAlike 4.0 International (CC BY-SA 4.0):
The Big List of Naughty Strings [15] isn’t a compilation of                 http://creativecommons.org/licenses/by-sa/4.0/
things you shouldn’t say to your mother. Rather, it’s a list of       [7]	Material Design Lite:
strings that are likely to cause problems for applications if they          https://github.com/google/material-design-lite
don’t adequately clean user input. It’s safe to say that if some-     [8]	Material Design Lite license: https://github.com/google/
one can input a harmful string into your application, eventu-               material-design-lite/blob/master/LICENSE
ally someone will. Whether those strings inject data via SQL,         [9]	TensorFlow: https://github.com/tensorflow/tensorflow
through server code or command injection, or introduce other          [10]	TensorFlow license: https://github.com/tensorflow/tensor-
vulnerabilities, it’s important to make sure that your program              flow/blob/master/LICENSE
cleans its string input to prevent malicious or just unexpected       [11]	Dragula: https://github.com/bevacqua/dragula
behavior. Use this collection as a part of your security tests to     [12]	Dragula license:
make sure your applications behaves properly. The Big List of               https://github.com/bevacqua/dragula/blob/master/license
Naughty Strings is available under an MIT license [16].               [13]	Redux: https://github.com/rackt/redux
                                                                      [14]	Redux license:
Linux insides                                                               https://github.com/rackt/redux/blob/master/LICENSE.md
Have you ever wanted to understand how the Linux kernel               [15]	Big List of Naughty Strings:
works? As in, really works, including the nitty-gritty details?             https://github.com/minimaxir/big-list-of-naughty-strings
Much of the freely available documentation out there focuses          [16]	Big List of Naughty Strings license: https://github.com/
on the user-facing parts of the Linux operating system, along               minimaxir/big-list-of-naughty-strings/blob/master/LICENSE
with its components like various GNU components, desktop              [17]	Linux insides: https://github.com/0xAX/linux-insides
environments, and applications; and for a project as large and        [18]	Attribution-NonCommercial-ShareAlike 4.0 International
complex as Linux, a beginner would easily get lost just trying to           (CC BY-NC-SA 4.0):
dive straight into the source code. Linux insides [17] is a series          http://creativecommons.org/licenses/by-nc-sa/4.0/
of articles written to give you a picture of the inner workings of    [19]	Deepdream: https://github.com/google/deepdream
the Linux kernel, and it’s completely free under a Creative Com-      [20]	Deepdream license: https://github.com/google/deep-
mons Attribution NonCommercial ShareAlike 4.0 license [18].                 dream/blob/master/LICENSE

Deepdream                                                             Author
Deepdream [19] is a Google-created computer vision pro-               Jason Baker is passionate about using technology to make the
gram that uses neural networks to interpret images by detect-         world more open. His interests range from software development
ing patterns and amplifying them. For an artificial intelligence      to bringing sunlight to local governments. Jason is particularly
researcher or developer, it can be used to classify images            interested in data visualization and analysis, DIY/maker culture,
based on their contents. For everyone else, it’s a library for        simulations/modeling, geospatial technologies, and cloud com-
creating some really psychedelic colorful interpretations of          puting (especially OpenStack). Follow him on Twitter @jehb.


Open Source Yearbook 2015       .. CC BY-SA 4.0 .. O  pensource.com                                                                     35
LEARNING
               ..............   ..
                      .............

   5 great Raspberry Pi
   projects for the classroom                                                                             BY BEN NUTTALL



   We round up 5                        fun Raspberry Pi projects
                                        for the classroom:
                                                                        the code to do the basics, it’s down to your imagination as to
                                                                        what you do next!
                                                                           If you know how to flash one light, you can flash three.
   1. Minecraft Pi                                                      Pick out three LEDs in traffic light colors and you can
   Minecraft is the favorite game of pretty much every teenager         code the traffic light
                                                                                                       Courtesy of Low Voltage Labs [2].
   in the world—and it’s one of the most creative games ever            sequence. If you know
                                                                                                       CC BY-SA 4.0.
   to capture the attention of young people. The version that           how to use a button to
   comes with every Raspberry Pi is not only a creative think-          a trigger an event, then
   ing building game, but comes with a programming interface            you have a pedestrian
                                         allowing for additional        crossing! Also look out
   Courtesy of the Raspberry Pi
                                         interaction with the Mi-       for great pre-built traf-
   Foundation. CC BY-SA 4.0.
                                         necraft world through          fic light add-ons like
                                         Python code.                   Pi Traffic Light [3], Pi-
                                            Minecraft: Pi Edition       Stop [4], TrafficHAT [5],
                                         is a great way for teach-      and more.
                                         ers to engage students            It’s not always about
                                         with problem solving           the code—this can be
                                         and writing code to per-       used as an exercise
                                         form tasks. You can use        in understanding how
                                         the Python API to build a      real world systems are
   house and have it follow you wherever you go, build a bridge         devised. Computational
   wherever you walk, make it rain lava, show the temperature in        thinking is a useful skill in any walk of life.
   the sky, and anything else your imagination can create.                 Next, try wiring up two buttons and an LED and making a
      Learn more in Getting Started with Minecraft Pi” [1].             two-player reaction game—let the light come on after a ran-
                                                                        dom amount of time and see who can press the button first!
   Courtesy of the Raspberry Pi Foundation. CC BY-SA 4.0.
                                                                           To learn more, check out GPIO Zero recipes [6]. Every-
                                                                        thing you need is in CamJam EduKit 1 [7].

                                                                        Courtesy of the Raspberry Pi Foundation. CC BY-SA 4.0.




   2. Reaction game and traffic lights
   It’s really easy to get started with physical computing on           3. Sense HAT Pixel Pet
   Raspberry Pi—just connect up LEDs and buttons to the                 The Astro Pi—an augmented Raspberry Pi—went to space
   GPIO pins, and with a few lines of code you can turn lights          in December 2015, but you haven’t missed your chance to
   on and control things with button presses. Once you know             get your hands on the hardware. The Sense HAT is the sen-


   36                                                                Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O  pensource.com
sor board add-on used in the Astro Pi mission and it’s avail-      infrared and the light     Courtesy of the Raspberry Pi
able for anyone to buy. You can use it for data collection,        spectrum, and how          Foundation. CC BY-SA 4.0.
science experiments, games and more. Watch the Raspber-            to adjust the camera
ry Pi Sense HAT Pixel Tutorial video [8] from Raspberry Pi’s       focus and control the
Carrie Anne (on the Geek Gurl Diaries YouTube channel [9])         camera in software.
for a great way to get started—by bringing to life an animated        Learn    more    in
pixel pet of your own design on the Sense HAT display.             “Make an infrared bird
   Learn more in “Exploring the Sense HAT” [10].                   box” [11].

Courtesy of the Raspberry Pi Foundation. CC BY-SA 4.0.
                                                                   5. Robotics
                                                                   With a Raspberry Pi
                                                                   and as little as a cou-
                                                                   ple of motors and a motor controller board, you can build
                                                                   your own robot. There is a vast range of robots you can
                                                                   make, from basic buggies held together by sellotape and a
                                                                   homemade chassis, all the way to self-aware, sensor-laden
                                                                   metallic stallions with camera attachments driven by games
                                                                   controllers.
                                                                      Learn how to control individual motors with something
                                                                   straightforward like the RTK Motor Controller Board (£8/$12),
                                                                   or dive into the new CamJam robotics kit (£17/$25) which
                                                                   comes with motors, wheels and a couple of sensors—great
Courtesy of the Raspberry Pi Foundation. CC BY-SA 4.0.
                                                                   value and plenty of learning potential.
                                                                                                           Alternatively, if you’d
                                                                   Courtesy of the Raspberry Pi
                                                                                                        like something more
                                                                   Foundation. CC BY-SA 4.0.
                                                                                                        hardcore, try PiBorg’s
                                                                                                        4Borg [12] (£99/$150)
                                                                                                        or    DiddyBorg       [13]
                                                                                                        (£180/$273) or go the
                                                                                                        whole hog and treat
                                                                                                        yourself to their Doo-
                                                                                                        dleBorg Metal edition
                                                                                                        (£250/$380)—and
                                                                                                        build a mini version of
                                                                   their infamous DoodleBorg tank [14] (unfortunately not for
4. Infrared bird box                                               sale).
A great exercise for the whole class to get involved with—            Check out the CamJam robotics kit worksheets [15].
place a Raspberry Pi and the NoIR camera module inside a              Do you have a fun Raspberry Pi project to share? Send
bird box along with some infra-red lights so you can see in        us your story: open@opensource.com.
the dark, then stream video from the Pi over the network or
                                                                   Courtesy of Low Voltage Labs. CC BY-SA 4.0.
on the internet. Wait for birds to nest and you can observe
them without disturbing them in their habitat. Learn all about

Courtesy of the Raspberry Pi Foundation. CC BY-SA 4.0.




Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                               37
LEARNING
                ..............   ..
                       .............

   3 open hardware projects
   for beginners                                                                                                  BY ALICIA GIBB


                                                                             Blinky Buildings
   I’m part of the Lunchbox                                                  The Blinky Buildings Empire
                                                                                                                  The Blinky Building Kit.
                                                                                                                  Photo courtesy of Lunchbox
                                                                                                                  Electronics.CC BY-SA 4.0.
   Electronics [1] team, where we create innovative, new prod-               State kit is a simple kit to teach
   ucts with great imagination and passion for open source                   people how to make deriva-
   hardware. Our goal is to combine the art and engineering of               tives of open source hardware.
   an R&D Lab with playful products and projects. We believe                 Make a derivative of a building
   that learning should be intuitive and fun.                                in your city! You are welcome
     Looking back over 2015, we picked three of our favorite                 to create a derivative of this kit
   projects and one open hardware book to keep you learning                  as long as it abides by the open
   and making.                                                               source hardware definition [3].
                                        Make this stoplight to learn
                                        more about soldering.
   The stop-and-go DIY                  Image courtesy of Lunchbox
                                                                             Building Open Source
   soldering kit                        Electronics. CC BY-SA 4.0.           Hardware
   As the name suggests, you                                                 Building Open Source Hard-
   can build the stop and go DIY                                             ware [5] is a field guide I wrote
   soldering kit [2] yourself. This                                          for designing and open sourcing your hardware. I curated a
   kit cycles through red, yellow,                                           selection of chapters written by a group of community mem-
   and green LEDs from an AT-                                                bers that include pointers on how to manufacture products,
   tiny85 and is a great way to                                                                        which license is best for you, and
   practice your soldering skills.                                                                     the history of the open source hard-
   It’s quick to put together (takes                                                                   ware movement. It’s a hands-on
   about 10 minutes) and the chip                                                                      guide with several checklists to help
   has been programmed for you.                                                                        you understand how best to open
   No need to know how to code.                                                                        source your device. Plus, royalties
   The holes on the base of the stop and go light are LEGO com-                                        of this book are given to the Open
   patible, so you can build this kit into your various brick projects.                                Source Hardware Association [6].
   You are welcome to create a derivative of this kit as long as it                                    Happy Hacking!
   abides by the open source hardware definition [3].
                                                                             Links
   Build upons: World’s tiniest light-up bricks                              [1]	Lunchbox Electronics: http://www.lunchboxelectronics.com/
   Build Upons [4] are light-up bricks that are compatible with              [2]	Stop and Go kit:
   LEGO. The Build Upons system has three types of bricks: an                     http://www.lunchboxelectronics.com/product/stopandgo
   LED brick, a power brick, and a bridge brick. Build Upons have            [3]	Open source hardware definition:
   a 1x1 LED brick to enable the user to create elegant designs.                  http://www.oshwa.org/definition/
   With Build Upons, the user is able to place the LED bricks                [4]	Build Upons: https://www.kickstarter.com/proj-
   anywhere throughout their design for ultimate flexibility. You                 ects/1828089281/build-upons-worlds-tiniest-light-up-bricks
                                      don’t need to know electron-           [5]	Building Open Source Hardware:
   Image courtesy of Lunchbox
                                      ics to use these bricks—you                 https://www.sparkfun.com/products/13220
   Electronics.CC BY-SA 4.0.
                                      simply build just like you’ve          [6]	Open Source Hardware Association: http://www.oshwa.org/
                                      always done and you will
                                      learn along the way. The               Author
                                      source for Build Upons will            Alicia Gibb is CEO of Lunchbox Electronics. She’s a jack-
                                      be released as open source             of-all-trades (even though she holds two masters degrees).
                                      hardware once the designs              She teaches physical computing in the ATLAS Institute (part
                                      have been finalized for our            of the Engineering Department at CU Boulder), and is the
                                      production pieces.                     director of a hackerspace—the Blow Things Up Lab—there.


   38                                                                     Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com
                                                                                               ....................   LEARNING




Publisher’s picks: 29 open
source books for 2015                                                               BY RIKKI ENDSLEY




Whether you prefer                           reading technical content online, in print, or both,
                                             technical book publishers have you covered. Six
publishers share picks for top 2015 open source-related book releases.




Addison-Wesley Professional                                         write exceptionally robust and well-performing code. Using
                                                                    the concise, scenario-driven style pioneered in Scott Meyers’
The Go Programming Language                                         best-selling Effective C++ [1], Brett Slatkin brings together
http://www.informit.com/store/                                      59 Python best practices, tips, and shortcuts, and explains
  go-programming-language-9780134190440                             them with realistic code examples. Drawing on his years of
by Alan A. A. Donovan and Brian W. Kernighan                        experience building Python infrastructure at Google, Slatkin
ISBN: 0134190440                                                    uncovers little-known quirks and idioms that powerfully im-
400 Pages                                                           pact code behavior and performance. He teaches the best
Publication Date: October 2015                                      way to accomplish key tasks, in order to write code that’s
Available eBook Formats: EPUB, MOBI, and PDF                       easier to understand, maintain, and improve.

The Go Programming Language is the authoritative resource
for any programmer who wants to learn Go. It shows how to           The Dart Programming Language
write clear and idiomatic Go to solve real-world problems. The      http://www.informit.com/store/dart-
book does not assume prior knowledge of Go nor experience             programming-language-9780321927705
with any specific language, making it accessible to readers         by Gilad Bracha
whether they’re most comfortable with JavaScript, Ruby, Py-         ISBN: 0-321-92770-2
thon, Java, or C++. The book features hundreds of interest-         224 Pages
ing and practical examples of well-written Go code that cover       Publication Date: December 2015
the whole language, its most important packages, and a wide         Available eBook Formats: EPUB, MOBI, and PDF
range of applications. Each chapter has exercises to test for
understanding and explore extensions and alternatives.              In this rigorous but readable introductory text, Dart speci-
                                                                    fication lead Gilad Bracha fully explains both the language
                                                                    and the ideas that have shaped it, offering an authoritative
Effective Python: 59 Specific Ways to                               description of Dart for programmers, computer science
  Write Better Python                                               students, and other well-qualified professionals. The text
http://www.informit.com/store/effective-                            illuminates key programming constructs with significant
  python-59-specific-ways-to-write-better-                          examples, focusing on principles of the language, such as
  python-9780134034287                                              optional typing and pure object-orientation. Bracha thor-
by Brett Slatkin                                                    oughly explains reflection in Dart, showing how it is evolv-
ISBN: 0-13-403428-7                                                 ing into a form that programmers can easily apply without
256 Pages                                                           creating excessively large programs. He also shares valu-
Publication Date: February 2015                                     able insights into Dart’s actor-style model for concurrency
Available eBook Formats: EPUB, MOBI, and PDF                       and asynchronous programming. Throughout, he covers
                                                                    both language semantics and the rationale for key fea-
This book will help readers master a truly “Pythonic” ap-           tures, revealing not just what Dart does, but why it works
proach to programming, harnessing Python’s full power to            the way it does.


Open Source Yearbook 2015        .. CC BY-SA 4.0 .. O
                                                    pensource.com                                                             39
LEARNING
                ..............   ..
                       .............
   Clojure Recipes                                                        Pro Bash Programming, Second Edition
   http://www.informit.com/store/                                         http://www.apress.com/9781484201220?gtmf=s
     clojure-recipes-9780321927736                                        by Jayant Varma, Chris F. A. Johnson
   by Julian Gamble                                                       ISBN13: 978-1-484201-22-0
   ISBN: 0-321-92773-7                                                    256 Pages
   288 Pages                                                              Publication Date: June 2015
   Publication Date: October 2015                                         Available eBook Formats: EPUB, MOBI, PDF
   Available eBook Formats: EPUB, MOBI, and PDF

   This is a wide-ranging, up-to-date “code recipe book” for an           Pro Bash Programming teaches you how to effectively uti-
   increasingly popular language. With practical and self-con-            lize the Bash shell in your programming. The Bash shell
   tained examples, Gamble illuminates Clojure’s key features             is a complete programming language, not merely a glue
   and best practices, showing how to solve real-world prob-              to combine external Linux commands. By taking full ad-
   lems one step at a time. Focusing on Clojure 1.7 and higher,           vantage of Shell internals, Shell programs can perform as
   the book fully reflects recent enhancements to ensure the              snappily as utilities written in C or other compiled languag-
   most up-to-date code for a given project.                              es. And you will see how, without assuming Unix lore, you
                                                                          can write professional Bash 4.3 programs through standard
                                                                          programming techniques. This second edition has updated
   Apress                                                                 for Bash 4.3, and many scripts have been rewritten to make
                                                                          them more idiomatically Bash, taking better advantage of
   Shell Scripting Recipes, Second Edition                                features specific to Bash. It is easy to read, understand,
   http://www.apress.com/9781484202210?gtmf=s                             and will teach you how to get a grip on Bash programming,
   by Jayant Varma                                                        without drowning you in pages and pages of syntax.
   ISBN13: 978-1-484202-21-0
   380 Pages                                                              Pro Freeware and Open Source Solutions
   Publication Date: October 2015                                           for Business
   Available eBook Formats: EPUB, MOBI, PDF                               http://www.apress.com/9781484211311?gtmf=s
                                                                          by Philip Whitt
   Shell Scripting Recipes is filled with more                            ISBN13: 978-1-484211-31-1
   than 150 much-needed and practical recipes that follow a               280 Pages
   problem-solution format, and help all Unix users regain some           Publication Date: September 2015
   of the lost time spent creating and testing shell scripts. Most        Available eBook Formats: EPUB, MOBI, PDF
   scripts in this book are POSIX (Portable Operating System
   Interface)-compliant, so they are supported by many of the             A practical guide for the small business owner seeking viable
   major shell variants, including Bash, ksh, and sh, among oth-          alternative to expensive commercial software packages and
   ers. This completely updated second edition takes into ac-             subscriptions. This reference guide provides an overview of
   count the many changes to shell scripting that have occurred           many popular and powerful free alternatives to proprietary
   since its original publication nearly 10 years ago, and all the        software. In this book you will find free and open source solu-
   recipes are now relevant for a modern audience.                        tions for office productivity, PDF creation, accounting, image
      Each real-world example recipe follows the same struc-              editing and graphic design, desktop publishing, 3D design,
   ture and easily shows you what’s going on in each case. File           CAD, audio and video editing, website and blog creation,
   conversion (DOS, UNIX, and Mac), system administration,                customer relationship management, point of sale, network-
   and resource monitoring are just a few of the topics covered           ing and security, and alternatives to the Windows and Mac-
   in this highly practical shell scripting reference. You will also      intosh operating systems. You can save a substantial sum
   find recipes for filename management, complex date calcu-              of money by replacing just a few commercial software titles
   lations, screen control capabilities, and more.                        with free and open source solutions.




   40                                                                  Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O pensource.com
Beginning Ubuntu for Windows and Mac Users                         No Starch
http://www.apress.com/9781484206096?gtmf=s
by Nathan Haines                                                   Automate the Boring Stuff with Python
ISBN13: 978-1-484206-09-6                                          https://www.nostarch.com/automatestuff
244 Pages                                                          by Al Sweigart
Publication Date: September 2015                                   ISBN: 978-1-59327-599-0
Available eBook Formats: EPUB, MOBI, PDF                           504 Pages
                                                                   Publication Date: April 2015
                                                                   Available eBook Formats: EPUB, MOBI, PDF
Want to move to an open source operating system? Or want
to help someone else make that move? If you’ve struggled
to find comprehensive guides or didn’t even know where to          Why should you spend hours (or weeks or months!) doing
start, this book will delight you. It teaches all newcomers to     tedious computer tasks when you can write a program to do
Ubuntu how to get the most out of Ubuntu for work, home,           the dirty work for you? Automate the Boring Stuff with Python
and play. Get started on your open source journey using this       assumes no prior programming experience—all you need is
excellent beginner’s guide.                                        a mundane task to “automate” and the desire to dive into
                                                                   Python basics. Python programs can effortlessly accomplish
                                                                   tasks like splitting, merging, watermarking and encrypting
OpenStack Trove                                                    PDFs, updating Excel spreadsheets, and filling out online
http://www.apress.com/9781484212226?gtmf=s                         forms. Automate the Boring Stuff with Python can stream-
by Amrith Kumar and Douglas Shelley                                line anyone’s work day and free them from time-consuming
ISBN13: 978-1-484212-22-6                                          computer tedium.
336 Pages                                                             To read more from Al Sweigart, author of Automate the
Publication Date: August 2015                                      Boring Stuff with Python, visit his Opensource.com author
Available eBook Formats: EPUB, MOBI, PDF                           page [2].



Your step-by-step guide to set up and run a secure and             Teach Your Kids to Code
scalable cloud Database as a Service (DBaaS) solution.             https://www.nostarch.com/teachkids
The book shows you how to set up and configure the Trove           by Bryson Payne
DBaaS framework, use prepackaged or custom database                ISBN: 978-1-59327-614-0
implementations, and provision and operate a variety of            336 Pages
databases—including MySQL, PostgreSQL, MongoDB,                    Publication Date: April 2015
Cassandra, and Redis—in development and production                 Available eBook Formats: EPUB, MOBI, PDF
environments.
Authors Amrith Kumar and Douglas Shelley, both active
technical contributors to the Trove project, describe com-         Even if don’t know your loops from your variables, with
mon deployment scenarios and walk you through the set-             Teach Your Kids to Code, you can walk your child through
up, configuration, and ongoing management of complex               fundamental programming concepts with Python. The book
database topics like replication, clustering, and high avail-      employs step-by-step explanations and visual and game-ori-
ability. The book provides detailed descriptions of how            ented examples to grab kids’ attention while strengthening
Trove works and gives you an in-depth understanding of             their problem-solving and computational thinking skills. As
its architecture.                                                  you both work through the book, you’ll learn how to build
                                                                   games (like Yahtzee and Pong), make a program that en-
                                                                   codes and decodes messages, draw colorful shapes with
                                                                   Turtle graphics, and more.
                                                                     To read more from Bryson Payne, author of Teach Your
                                                                   Kids to Code, visit his Opensource.com author page [3].




Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                             41
LEARNING
                ..............   ..
                       .............
   SparkFun Guide to Processing                                          Creative coding challenges and applied examples will put
   https://www.nostarch.com/sparkfunprocessing                           your new math and coding skills into practice. You’ll write
   by Derek Runberg                                                      an inequality solver, plot gravity’s effect on how far a bullet
   ISBN: 978-1-59327-612-6                                               will travel, shuffle a deck of cards, estimate the area of
   312 Pages                                                             a circle by throwing 100,000 “darts” at a board, explore
   Publication Date: August 2015                                         the relationship between the Fibonacci sequence and the
   Available eBook Formats: EPUB, MOBI, PDF                              golden ratio, and more. Along the way, you’ll discover new
                                                                         ways to explore math and gain valuable programming
                                                                         skills that you’ll use throughout your study of math and
   The Sparkfun Guide to Processing uses the artist-friendly             computer science.
   programming language Processing to unleash your creativity
   through interactive art and games. You’ll get a primer on ani-
   mation and programming, and then work your way through a              O’Reilly Media
   series of step-by-step, hands-on projects, including pixel art,
   a playable maze game, and psychedelic visualizations that             Fluent Python
   respond to light, sound, and temperature.                             http://shop.oreilly.com/product/0636920032519.do
                                                                         by Luciano Ramalho
                                                                         ISBN: 978-1-4919-4600-8
   The Official ScratchJr Book                                           770 Pages
   https://www.nostarch.com/scratchjr                                    Publication Date: July 2015
   by Marina Umaschi Bers and Mitchel Resnick                            Available eBook Formats: DAISY, EPUB, MOBI, PDF
   ISBN: 978-1-59327-671-3
   160 Pages
   Publication Date: October 2015                                        Python’s simplicity lets you become productive quickly, but
   Available eBook Formats: EPUB, MOBI, PDF                              this often means you aren’t using everything it has to offer.
                                                                         With this hands-on guide, you’ll learn how to write effective,
                                                                         idiomatic Python code by leveraging its best—and possibly
   Scratch is already the standard for teaching kids to program,         most neglected—features. Author Luciano Ramalho takes
   with more than 11 million users. Now, there’s a new kid in            you through Python’s core language features and libraries,
   town—ScratchJr! With this programming language designed               and shows you how to make your code shorter, faster, and
   for kids ages 5 to 7, young ones can get a head start on              more readable at the same time. Many experienced pro-
   picking up programming fundamentals by creating interac-              grammers try to bend Python to fit patterns they learned
   tive stories and games on Android and iPad tablets. Written           from other languages, and never discover Python features
   by ScratchJr’s creators, The Official ScratchJr Book contains         outside of their experience. With this book, those Python
   several activities that build on one another, with each chap-         programmers will thoroughly learn how to become proficient
   ter culminating in a fun final project. Along the way, kids de-       in Python 3.
   velop computational-thinking, problem-solving, and design
   skills. The book includes helpful tips for grown-ups, creative
   challenges to take the learning further, and suggestions for          Learning Spark
   connecting the activity with literacy and math concepts.              http://shop.oreilly.com/product/0636920028512.do
                                                                         by Holden Karau, Andy Konwinski,
                                                                           Patrick Wendell, Matei Zaharia
   Doing Math with Python                                                ISBN: 978-1-4493-5862-4
   https://www.nostarch.com/doingmathwithpython                          276 Pages
   by Amit Saha                                                          Publication Date: January 2015
   ISBN: 978-1-59327-640-9                                               Available eBook Formats: DAISY, EPUB, MOBI,
   264 Pages                                                               PDF
   Publication Date: August 2015
   Available eBook Formats: EPUB, MOBI, PDF                              Data in all domains is getting bigger. How can you work
                                                                         with it efficiently? Recently updated for Spark 1.3, this
                                                                         book introduces Apache Spark, the open source cluster
   Doing Math with Python is the perfect book for anyone who             computing system that makes data analytics fast to write
   loves, or studies, math. Doing Math with Python shows you             and fast to run. With Spark, you can tackle big datasets
   how to use Python to delve into high school–level math                quickly through simple APIs in Python, Java, and Scala.
   topics, such as statistics, geometry, probability, and calculus.      This edition includes new information on Spark SQL, Spark


   42                                                                 Open Source Yearbook 2015       .. CC BY-SA 4.0 .. O  pensource.com
Streaming, setup, and Maven coordinates. Written by the              Docker Cookbook
developers of Spark, this book will have data scientists and         http://shop.oreilly.com/product/0636920036791.
engineers up and running in no time. You’ll learn how to               do?sortby=publicationDate
express parallel jobs with just a few lines of code, and cover       by Sébastien Goasguen
applications from simple batch jobs to stream processing             ISBN: 978-1-4919-1971-2
and machine learning.                                                366 Pages
                                                                     Publication Date: November 2015
                                                                     Available eBook Formats: DAISY, EPUB, MOBI, PDF
Git for Teams
http://shop.oreilly.com/product/0636920034520.do                     Whether you’re deploying applications on premise or in the
by Emma Jane Hogbin Westby                                           cloud, this cookbook provides developers, operators, and IT
ISBN: 978-1-4919-1118-1                                              professionals with more than 130 proven recipes for work-
356 Pages                                                            ing with Docker. With these practical solutions, experienced
Publication Date: August 2015                                        developers with no previous knowledge of Docker will be
Available eBook Formats: DAISY, EPUB, MOBI, PDF                      able to package and deploy distributed applications within
                                                                     a couple of chapters. IT professionals will be able to solve
                                                                     everyday problems, as well as create, run, share, and deploy
You can do more with Git than just build software. This prac-        Docker images. Operators will quickly be able to adopt the
tical guide delivers a unique people-first approach to version       tools that will change the way they work.
control that also explains how using Git as a focal point can
help your team work better together. You’ll learn how to plan        Packt
and pursue a Git workflow that not only ensures that you
accomplish project goals, but also fits the immediate needs          Python Machine Learning
and future growth of your team. The first part of the book on        https://www.packtpub.com/big-data-and-
structuring workflow is useful for project managers, technical         business-intelligence/python-machine-
team leads, and CTOs. The second part provides hands-on                learning/?utm_source=opensource&utm
exercises to help developers gain a better understanding of            _medium=referral
Git commands.                                                        by Sebastian Raschka
                                                                     ISBN: 9781783555130
                                                                     454 Pages
Living Clojure                                                       Publication Date: September 2015
http://shop.oreilly.com/product/0636920034292.do
by Carin Meier                                                       Visit just about any tech or business website from the past
ISBN: 978-1-4919-0904-1                                              decade and you’ll find someone talking about Big Data. But
242 Pages                                                            whatever “revolution” took place within business over the past
Publication Date: April 2015                                         few years is well and truly over—Big Data is now the norm.
Available eBook Formats: DAISY, EPUB, MOBI, PDF                      In 2015, it’s all about what you do with your data. And that’s
                                                                     where machine learning comes in, allowing you to model and
                                                                     analyze your data in ways that help you predict future out-
If you’re an experienced programmer who has not worked               comes and behavior. In a global economy where the margins
with Clojure before, this guide is the perfect thorough but          between success and failure are small and the future looks
gentle introduction for you. Author Carin Meier not only pro-        just a little bit frightening, the control that machine learning in-
vides a practical overview of this JVM language and its func-        sights can bring will give you confidence that the world around
tional programming concepts, but also includes a complete            you isn’t as impenetrable as you first thought.
hands-on training course to help you learn Clojure in a struc-          Python Machine Learning connects directly to this trend,
tured way. The first half of the book takes you through Clo-         providing an accessible and practical route through the top-
jure’s unique design and lets you try your hand at two Clojure       ic with one of the world’s most popular programming lan-
projects, including a web app. The holistic course in second         guages. But its accessibility doesn’t mean it lacks depth—it’s
half provides you with critical tools and resources, including       comprehensive, too, guiding readers through some of the
ways to plug into the Clojure community.                             latest Python machine learning libraries, such as Theano
                                                                     and Keras. It also takes in a number of different applications,
                                                                     from sentiment analysis to neural networks. At Packt, we see
                                                                     the book not only as further evidence of Python’s popularity,
                                                                     but also indicative of a technical workforce interested in delv-
                                                                     ing in and out of a range of problems quickly.


Open Source Yearbook 2015         .. CC BY-SA 4.0 .. O
                                                     pensource.com                                                                    43
LEARNING
                 ..............   ..
                        .............
   Go Programming Blueprints                                            from data. But with Spark, we’re looking at the future of
   https://www.packtpub.com/application-                                machine learning—its speed and processing power mean
     development/go-programming-blueprints/                             it’s the tool that’s redefining what’s possible with Big Data.
     ?utm_source=opensource&utm_                                        Spark’s in-memory data storage is perhaps one of its most
     medium=referral                                                    exciting features, but it’s only once you’ve seen it in action,
   by Mat Ryer                                                          processing data across clusters, that you can begin to get a
   ISBN: 9781783988020                                                  sense of how it can be used for high-velocity data analysis.
   274 Pages                                                            Machine Learning with Spark really communicates the full
   Publication Date: January 2015                                       extent of what’s possible with Spark—at Packt we know
                                                                        that technological innovation is really driven by the triumvi-
   Go, in many ways, echoes Python. Like Python, Go is an               rate of speed, efficiency, and size, and that’s certainly what
   expressive multipurpose language, demonstrating a cur-               makes Spark such a big deal for us. The book does look like
   rent trend for languages that are capable of providing rap-          a standard machine learning guide, but because of Spark’s
   id solutions to a wide range of programming challenges.              integrated offering, you’ll find chapters that explore data
   One of the most interesting things about Go is that every-           processing and preparation, as well as a chapter dedicated
   thing about it is very deliberate. Perhaps this is unsurpris-        to real-time machine learning, the field where Spark really
   ing for a programming language that has been developed               stands out.
   by Google, an organization that has made matters of de-
   tail and engineering a core part of their brand, but it’s still
   worth thinking about in the context of the future of open            React.js Essentials
   source, in terms of what it means and what it will look like         https://www.packtpub.com/web-development/
   for programmers.                                                       reactjs-essentials/?utm_source=
      Go’s elegant and expressive syntax isn’t something that             opensource&utm_medium=referral
   should be learned, but instead should be experienced.                by Artemij Fedosejev
   That’s where we started with Go Programming Blueprints.              ISBN: 9781783551620
   Exploring Go through a number of different projects, includ-         208 Pages
   ing a chat application (using web-sockets) and a random              Publication Date: August 2015
   recommendation service (you’ll have to look inside to find
   out what that looks like), the book demonstrates how Go              In 2014, we were looking toward MEAN [4] as the crucial
   makes building for scalability and performance simple. At            full-stack web development solution. But that’s started to
   a time when these issues have never been more important              change, with the rise of unbelievably lightweight tools that
   in the industry, we believe that it’s only by diving straight        bridge the divide between framework and library. React.js
   into these problems that we can properly tackle them—and             rises above all others. Created by Facebook, React.js is now
   build better software.                                               being used by some of the biggest tech companies in the
                                                                        world, including AirBnB and Instagram. The fact that these
                                                                        organizations depend upon the great UI and user experience
   Machine Learning with Spark                                          of their apps and websites is really a testament to React’s
   https://www.packtpub.com/big-data-and-                               power. The reason why React is so impressive is simple—it
     business-intelligence/machine-learning-spark/                      lets you build UI components that immediately update with
     ?utm_source=opensource&utm                                         data changes. It lives up to its name—React reacts as soon
     _medium=referral                                                   as it needs to.
   by Nick Pentreath                                                       Inspired by React’s rapid response time, React.js Es-
   ISBN: 9781783288519                                                  sentials responds to the web development world’s current
   338 Pages                                                            love for components. Offering an accessible and fast-paced
   Publication Date: February 2015                                      journey through the world of React.js, it underlines just why
                                                                        React is becoming more and more popular. Perfect for web
   We’ve already seen that machine learning is becoming the             developers interested in the cutting-edge of their field, the
   area that’s defining data science as we know it—from Big             book looks set to remain relevant throughout 2016, as the
   Data to small data, from data mining to visualization, at the        world plays catch up with those most committed to and driv-
   core of all these elements is the ability to learn and predict       en by innovation.




   44                                                                Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O pensource.com
Python Data Science Essentials                                        best practices that make your product stronger. Coverage
https://www.packtpub.com/big-data-and-                                includes OpenStack service primitives, networking within the
  business-intelligence/python-data-                                  OpenStack Ecosystem, deployment of Virtualized Network
  science-essentials/?utm_source=                                     Functions for Enterprises, containers, data protection, and
  opensource&utm_medium=referral                                      much more.
by Alberto Boschetti, Luca Massaron
ISBN: 9781785280429
258 Pages                                                             Data Science and Big Data Analytics:
Publication Date: April 2015                                            Discovering, Analyzing, Visualizing
                                                                        and Presenting Data
If Python is the one language that could lay a claim to de-           http://www.wiley.com/WileyCDA/WileyTitle/
fining programming in 2015 (yes, there are some close                   productCd-111887613X.html
contenders, but no other language is quite so ubiquitous              by EMC2 Education Services
as Python), it’s only fair that we return to where we started         ISBN: 978-1-118-87613-8
and let another of our most popular Python titles have the            432 Pages
final word.                                                           Publication Date: January 2015
   Python Data Science Essentials opens up a whole new                Available eBook Formats: EPUB, PDF
approach to data science. The book was developed, like
many Packt titles, with accessibility in mind. This doesn’t           Data Science and Big Data Analytics is about harnessing
just mean it’s “easy to follow” (although, if you must know, it       the power of data for new insights. The book covers the
is). It means, more specifically, that the book offers a range        breadth of activities and methods and tools that data scien-
of readers—whether you’re a web developer working with                tists use. The content focuses on concepts, principles, and
Python or a data scientist that’s always worked with R, but           practical applications that are applicable to any industry
is now curious about Python—a simple way to explore Py-               and technology environment, and the learning is supported
thon’s data science capabilities. Everyone wants to better            and explained with examples that you can replicate using
understand data. Python Data Science Essentials shows                 open-source software.
you that in-depth insight doesn’t have to be difficult.

                                                                      Linux Bible, 9th Edition
Wiley                                                                 http://www.wiley.com/WileyCDA/WileyTitle/
                                                                        productCd-1118999878,descCd-buy.html
OpenStack Cloud Application Development                               by Christopher Negus
http://www.wiley.com/WileyCDA/WileyTitle/                             ISBN: 978-1-118-99987-5
  productCd-1119194318,descCd-buy.html                                912 Pages
by Scott Adkins, John Belamaric, Vincent Giersch,                     Publication Date: April 2015
  Denys Makogon, Jason E. Robinson                                    Available eBook Formats: EPUB, PDF
ISBN: 978-1-119-19431-6
168 Pages                                                             Linux Bible is the ultimate hands-on Linux user guide, wheth-
Publication Date: November 2015                                       er you’re a true beginner or a more advanced user navigat-
Available eBook Formats: EPUB, PDF                                    ing recent changes. This updated ninth edition covers the
                                                                      latest versions of Red Hat Enterprise Linux 7 (RHEL 7),
OpenStack Cloud Application Development is a fast-paced,              Fedora 21, and Ubuntu 14.04 LTS, and includes new infor-
professional book for OpenStack developers, delivering com-           mation on cloud computing and development with guidance
prehensive guidance without wasting time on development               on OpenStack and Cloudforms. With a focus on RHEL 7,
fundamentals. Written by experts in the OpenStack commu-              this practical guide gets you up to speed quickly on the new
nity from Infoblox, Gigaspaces, GoDaddy, and Comcast, this            enhancements for enterprise-quality file systems, the new
book shows you how to work effectively and efficiently within         boot process and services management, firewalld, and the
the OpenStack platform to develop large, scalable applica-            GNOME 3 desktop. Written by a Red Hat expert, this book
tions without worrying about underlying hardware. Follow              provides the clear explanations and step-by-step instructions
along with an OpenStack build that illustrates how and where          that demystify Linux and bring the new features seamlessly
each technology comes into play, as you learn expert tips and         into your workflow.




Open Source Yearbook 2015          .. CC BY-SA 4.0 .. O
                                                      pensource.com                                                             45
LEARNING
                ..............   ..
                       .............
   Professional Python                                               Reliable JavaScript: How to Code Safely
   http://www.wiley.com/WileyCDA/WileyTitle/                           in the World’s Most Dangerous Language
     productCd-1119070856.html                                       http://www.wiley.com/WileyCDA/WileyTitle/
   by Luke Sneeringer                                                  productCd-1119028728.html
   ISBN: 978-1-119-07085-6                                           by Lawrence Spencer, Seth Richards
   288 Pages                                                         ISBN: 978-1-119-02872-7
   Publication Date: October 2015                                    528 Pages
   Available eBook Formats: EPUB, PDF                                Publication Date: July 2015
                                                                     Available eBook Formats: EPUB, PDF
   Professional Python goes beyond the basics to teach
   beginner- and intermediate-level Python programmers               Reliable JavaScript: How to Code Safely in the World’s Most
   the little-known tools and constructs that build concise,         Dangerous Language demonstrates how to create test-driven
   maintainable code. Design better architecture and write           development for large-scale JavaScript applications that will
   easy-to-understand code using highly adoptable tech-              stand the test of time and stay accurate through long-term use
   niques that result in more robust and efficient applica-          and maintenance. Taking a test-first approach to software ar-
   tions. Coverage includes decorators, context managers,            chitecture, this book walks you through several patterns and
   magic methods, class factories, metaclasses, regular              practices and explains what they are supposed to do by having
   expressions, and more, including advanced methods for             you write unit tests. Write the code to pass the unit tests, so you
   unit testing using asyncio and CLI tools. Each topic in-          not only develop your technique for structuring large-scale ap-
   cludes an explanation of the concept and a discussion on          plications, but you also learn how to test your work. You’ll come
   applications, followed by hands-on tutorials based on re-         away with hands-on practice that results in code that is correct
   al-world scenarios. All sample code is available for down-        from the start, and has the test coverage to ensure that it stays
   load from the companion website, and the “Python 3 first”         correct during subsequent maintenance. All code is provided
   approach covers multiple current versions, while ensuring         both in the text and on the web, so you can immediately get
   long-term relevance.                                              started designing more complete, robust applications.



   Links                                                             Author
   [1]	http://www.informit.com/authors/bio/ea8b25c7-a974-480e-      Rikki Endsley is a community manager for Opensource.com.
        a723-991b1fdd70da                                            She has worked as the community evangelist on the Open
   [2] https://opensource.com/users/alsweigart                      Source and Standards (OSAS) team at Red Hat; a freelance
   [3]	http://opensource.com/users/professorpayne                   tech journalist; community manager for the USENIX Associ-
   [4]	http://mean.io/#!/                                           ation; associate publisher of Linux Pro Magazine, ADMIN,
                                                                     and Ubuntu User; and the managing editor of both Sys
                                                                     Admin magazine and UnixReview.com. Follow her on Twitter
                                                                     @rikkiends.




   46                                                             Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O   pensource.com
                                                                                            ....................   LEARNING




         8 books to
         make you a
         more open
             leader                BY BRYAN BEHRENSHAUSEN




Open source                      principles continue to in-
                                 vade new domains, and
                                                                   The Engaged Leader
                                                                   by Charlene Li (Recommended by
in 2015 we saw this trend accelerate. Traditional organi-            Jason Hibbets [4])
zational structures are giving way to new models―more
open models—and the nature of our collaborations is                Using social media to engage and listen
changing. Rapidly.                                                 isn’t a science. It’s an art. And in The
   When Jim Whitehurst published The Open Organization             Engaged Leader [5], Li helps you nav-
in June, he crystallized something that’s been nascent for         igate these waters with examples from
years: a new management paradigm, one fit for the 21st             different industries and from leaders at
century. Leaders everywhere are scrambling to under-               various levels in their organizations. I’ve recommended
stand their roles under this paradigm, and our community           this book to several of my colleagues at Red Hat (and be-
has come to their aid with recommendations for books that          yond) who want to use social media and other digital tools
will guide them across uncertain terrain. If you’ve resolved       to be more engaged with the their customers, people they
to become a more open leader in 2016, then you’ll want             lead, and especially other leaders. Li provides practical
to start here.                                                     stories and tips to help you to adapt to this new era of
                                                                   digital engagement.

Discover Your True North
by Bill George (Recommended by Sam Knuth [1])                      How to Develop Emotional Health
                                                                   by Oliver James (Recommended by
Bill George has written extensively on                               Laura Hilliger [6])
authenticity in leadership, which includes
transparency, honesty, and openness.                               A quick and fun read, How to Develop
Discover Your True North [2] draws on                              Emotional Health [7] will help you identi-
George’s personal experiences with                                 fy personal hang-ups that may stop you
many authentic leaders across many in-                             from being an open and engaged leader.
dustries, pulling together the themes that contribute to their     James offers solutions and insights on
successes and failures. Consistently, the same principles          how to work through your past, present, and future to lead
Jim explores in The Open Organization [3] emerge as criti-         a mentally healthy, happy, and productive life—touch-
cal leadership traits in the experiences of both George and        stones for good leaders and, indeed, “open sourcers” in
the leaders he profiles. Discover Your True North is not only      general.
a great collection of case studies and experiences but also
a guide to practicing authentic, open leadership for people
at any stage in their careers.


Open Source Yearbook 2015       .. CC BY-SA 4.0 .. O
                                                   pensource.com                                                          47
LEARNING
                ..............   ..
                       .............
   Rework                                                         The Open Organization
   by Jason Fried & David Heinemeier Hansson                      by Philip A. Foster (Recommended by
     (Recommended by Marten Mickos [8])                             Bryan Behrenshausen [12])

   Rework [9] examines organizing work in                         Before The Open Organization by Jim
   the modern world, where people work                            Whitehurst was The Open Organization [13]
   from home and largely know what to do.                         by Philip A. Foster. Although Jim admits that
   It’s full of pithy, illustrated advice (“Pick a                his book isn’t management theory (“I’ll leave
   fight.” “Meetings are Toxic.” “Inspiration                     that to the academics,” he says), Foster’s is
   if Perishable.”) for anyone looking to revamp the work-        unabashedly so. Published in 2014, The Open Organization
   place. Although the authors may not use the term, that         is quite frankly the textbook on what both authors call a “new
   openness is an underlying principle of this book is easy       management paradigm.” Meticulously researched and annotat-
   to see.                                                        ed, Foster’s volume draws on sources running the gamut from
                                                                  management theorists to practitioners. And as a neat bonus,
                                                                  Foster offers a compelling case study: GitHub, whose mission
   Quiet Leadership                                               to “create awesome” prompted interesting organizational choic-
   by David Rock (Recommended by                                  es. For enthusiasts, it’s a moment of precious insight into daily
     Rebecca Fernandez [10])                                      life at a firm embracing the open source mission. For leaders,
                                                                  it’s simply required reading.
   Whether you’re a manager, a mentor, or
   both, you want to coach and give feed-
   back in a way that promotes another                            Consiglieri
   person’s growth and contributes to auton-                      by Richard Hytner (Recommended by
   omous decision-making. Through com-                              Laura Hilliger [6] )
   pelling neuroscience, Quiet Leadership [11] shows why
   leaders should stop giving advice and offering up ideas.       Although Consiglieri [14] weighs in heav-
   Learn how to listen more, talk less, and ask the kinds of      ily on the “evil corporate” examples and
   questions that help people find their own solutions.           name-dropping, it contains some wonder-
                                                                  ful undertones about being a leader who
                                                                  guides rather than directs. The so-called




        How can open source values transform the way we
        work, manage, and lead?




                                                              Join the conversation at:
                                                       opensource.com/open-organization


   48                                                          Open Source Yearbook 2015      .. CC BY-SA 4.0 .. O pensource.com
“second in command” is all of us in any given conversation.         [4]	Jason Hibbets: https://opensource.com/users/jhibbets
Knowing to respect and wield that power can help make you           [5]	The Engaged Leader:
an influential leader in distributed networks.                            http://wdp.wharton.upenn.edu/book/engagedleader/
                                                                    [6]	Laura Hillinger: https://opensource.com/users/laurahilliger
                                                                    [7]	How to Develop Emotional Health:
Act Like a Leader, Think Like a Leader                                    http://www.theschooloflife.com/shop/how-to-develop-emo-
by Herminia Ibarra (Recommended by                                        tional-health-oliver-james/
  Jeff Mackanic [15])                                               [8]	Marten Mickos: https://opensource.com/users/martenmickos
                                                                    [9]	Rework: https://37signals.com/rework/
In The Open Organization Jim Whitehurst                             [10]	Rebecca Fernandez: https://opensource.com/users/rebecca
writes: “What I need to do is create the con-                       [11]	Quiet Leadership:
text for Red Hat associates so they can do                                http://www.quietleadership.com/public/content.aspx-
their best work. My goal is to get people                                 ?Page=index&AspxAutoDetectCookieSupport=1
to believe in the mission and then create                           [12]	Bryan Behrenshausen:
the right structures that empower them to achieve what once               https://opensource.com/users/bbehrens
might have been impossible.” In Act Like a Leader, Think Like       [13]	The Open Organization:
a Leader [15], Ibarra offers advice on empowering leaders this            http://www.ashgate.com/default.aspx?page=637&calcTi-
way. She writes that in order to act like leaders, we will have           tle=1&isbn=9781472440112&lang=cy-gb
to devote much of our time to the following practices: bridging     [14]	Consiglieri: http://www.consiglieribook.com/
across diverse people and groups, envisioning new possibili-        [15]	Jeff Mackanic: https://opensource.com/users/mackanic
ties, engaging people in the change process, and embodying          [16]	Act Like a Leader, Think Like a Leader:
the change. Ibara then provides detailed ideas for ways leaders           http://herminiaibarra.com/books/
can grow in each of these areas. This book is full of insights,
and can certainly help you become a more open leader.               Author
                                                                    Bryan Behrenshausen has been a member of the Opensource.com
Links                                                               team since 2011. When he’s not thinking or writing about all
[1]	Sam Knuth: https://opensource.com/users/samfw                  things open source, he’s playing retro video games or reading
[2]	Discover Your True North: http://discoveryourtruenorth.org/    classic science fiction. In 2015, he earned his PhD in Commu-
[3]	The Open Organization:                                         nication from UNC, Chapel Hill. Around the Net, he goes by the
     https://opensource.com/open-organization                       nickname “semioticrobotic.”




     The conversation continues
     in this community-produced
     companion to
     The Open Organization.




     Download your free copy at:
     opensource.com/open-organization/resources/field-guide


Open Source Yearbook 2015       .. CC BY-SA 4.0 .. Opensource.com                                                                 49
      Most Playful
 Best open source games
      of 2015                                                                                                   BY ROBIN MUILWIJK




2015         has been a great year for open source and
             Linux gaming. The number of Linux games
continues to grow [1], and Steam Machines [2] finally hit the
                                                                       an advanced AI, intuitive interface, engaging gameplay, and
                                                                       program stability.

                                                                       Credit and copyright Magarena website.
market on November 10. I’d like to give you my picks for the
top five open games of 2015. Which one is your favorite?
And which games do you think should have made the list?

5. SuperTuxKart
At number five we have SuperTuxKart [3], a hugely popular
racing game.
    SuperTuxKart’s gameplay is similar to Mario Kart. What
makes it unique is that it is open source, and its characters
are open source mascots, with Mozilla Thunderbird being
the race referee. A major update for SuperTuxKart was its
0.9 release in April 2015. This release included a highly mod-
ified version of Irrlicht [4], including an entirely new graphics
renderer dubbed Antarctica [5], which enabled better graph-
ics appearance and features such as dynamic lighting, am-              3. Battle of Wesnoth
bient occlusion, depth of field, global illumination, and more.        With number three, we head into a classic, Battle of
The game has been downloaded more than 2 million times                 Wesnoth [9].
so far. This number applies to the fork of TuxKart, and also              Gamers that prefer a turn-based tactical strategy game
when Joerg Henrichs resurrected the project with the help of           will love Battle for Wesnoth. Making this game unique is its
Eduardo Hernandez Munoz. More of the game’s history is                 high fantasy theme. The game allows you to build your own
available on Wikipedia [6].                                            army, out of 200 unit types. It also includes 16 races, 6 ma-
                                                                       jor factions, and hundreds of years of history. As player, you
Credit and copyright SuperTuxKart blog.
                                                                       are the heir to Wesnoth, and you fight to regain its throne.
                                                                       “The world of Wesnoth is absolutely huge and only limited
                                                                       by your creativity—make your own custom units, create your

                                                                       Credit and copyright Battle of Wesnoth website.




4. Magarena
At number four comes Magarena [7], a single-player fantasy
card game.
  Based on Magic: The Gathering [8], the game lets you play
Magarena against a computer opponent. Magarena includes


50                                                                  Open Source Yearbook 2015    .. CC BY-SA 4.0 .. O    pensource.com
                                                                                                                    MO
own maps, and write your own scenarios or even full-blown          games in our weekly round-
                                                                                                                 PL             ST
campaigns.”                                                        ups, including:                                      AY
                                                                   • Relic Hunters Zero [12] is a                         F     UL
2. 0 A.D.                                                             nice game in which you get to
Switching to a historical real time strategy game, at number          shoot evil space ducks in the
two, we have 0 A.D [10].                                              face with tiny cute guns. “It’s
    Although you can already download 0 A.D., this game is            fast, it’s tactical, and feels
in alpha; still, it is playable, and available as native client       delicious and smooth to
for Linux. 0 A.D. is unique in its graphics and rendering,            play.”
backed by positive acclaim. As leader of an ancient civi-          • S crabble3D [13] is
lization, your goal is to gather the resources you need to            open source, based
raise a military force and dominate your enemies. Your civ-           on a GPLv3 li-
ilizations and battles take part over the millennium of 500           cense. You can play
B.C. to 500 A.D. Hence, the name of this game, being the              against the comput-
midpoint: 0 A.D.                                                      er, against players on
                                                                      your local network, or con-
Credit play0ad.com, license CC-BY-SA.
                                                                      nect to a game server online. The real fun in this game
                                                                      is that you can create words in three directions instead of
                                                                      just two.
                                                                   • OpenTTD [14] is an open source simulation game based
                                                                      upon Transport Tycoon Deluxe. As entrepreneur, your goal
                                                                      is to make as much profit as possible by transporting pas-
                                                                      sengers and various goods by road, rail, sea, and air.
                                                                   • SuperTux [15] is a classic 2D jump’n run sidescroller game
                                                                      in a style similar to the original Super Mario games cov-
                                                                      ered under the GNU GPL.
                                                                   You can also find a list of open source games and projects
                                                                   on GitHub [16].

1. Minetest                                                        Links
That leaves us with number one, Minetest [11], an open             [1]	Steam database: https://steamdb.info/
source alternative to Minecraft.                                   [2]	Steam machines:
  Minetest’s gameplay is similar to Minecraft’s. You can cre-            http://store.steampowered.com/universe/machines/
ate and remove various types of blocks in a 3D open world.         [3]	SuperTuxKart: http://supertuxkart.blogspot.co.uk/
Minetest supports singleplayer and multiplayer games.              [4]	Irrlicht: http://irrlicht.sourceforge.net/
Minetest also includes many features, such as support for          [5]	Antarctica:
mods, texture packs, and more. Minetest is released under                http://supertuxkart.sourceforge.net/Antarctica:_Overview
the GNU Lesser General Public License.                             [6]	SuperTuxKart history:
                                                                         https://en.wikipedia.org/wiki/SuperTuxKart
Credit Minetest, license CC BY-SA 3.0 Unported.
                                                                   [7]	Magarena: https://magarena.github.io/
                                                                   [8]	Magic the Gathering: http://magic.wizards.com/
                                                                   [9]	Battle of Wesnoth: http://www.wesnoth.org/
                                                                   [10]	0 A.D.: http://play0ad.com/
                                                                   [11]	Minetest: http://www.minetest.net/
                                                                   [12]	Relic Hunters Zero: http://zueiradigital.com/presskit/rhz/
                                                                   [13]	Scrabble3D: http://scrabble.sourceforge.net/wiki/
                                                                   [14]	OpenTTD: https://www.openttd.org/en/
                                                                   [15]	SuperTux: http://supertuxproject.org/
                                                                   [16]	Games on GitHub: https://github.com/leereilly/games

                                                                   Author
                                                                   Robin Muilwijk is an advisor on Internet and e-Government.
Honorable mentions                                                 He also serves as a community moderator for Opensource.
My top 5 is not a complete list of great open games.               com, and on the board for the eZ Publish community. Follow
For example, we covered some interesting and fun                   him on Twitter @i_robin.


Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                                  51
CREATING
                ..............   ..
                       .............

    10 tools for visual effects in
    Linux with Kdenlive                                                                                                  BY SETH KENLON




   Kdenlive                [1] is one of those applications: You
                           can use it daily for a year and wake up
   one morning only to realize that you still have only grazed
                                                                           the Sepia and XPro
                                                                           effects. Admittedly,
                                                                           controls to adjust
   the surface of all of its potential. That’s why it’s nice every         how sepia tone the
   once in a while to sit back and look over some of the less-             sepia effect is would
   er-used tricks and tools in Kdenlive. Even though some-                 be nice, but no mat-
   thing’s not used as often as, say, the Spacer or Razor tools,           ter what, when you
   it still may end up being just the right finishing touch on your        need a quick and
   latest masterpiece.                                                     familiar color effect,
      Most of the tools I’ll discuss here are not officially part          this is the filter to
   of Kdenlive; they are plugins from the Frei0r [2] package.              throw onto a clip.
   These are ubiquitous parts of video processing on Linux and             It’s immediate, it’s easy, and if your client asks for that look,
   Unix, and they usually get installed along with Kdenlive as             this does the trick every time.
   distributed by most Linux distributions, so they often seem
   like part of the application. If your install of Kdenlive does not
   feature some of the tools mentioned here, make sure that
   you have Frei0r plugins installed.
      Because many of the tools in this article affect the look
   of an image, here is the base image, without effects or
   adjustment:                                                             2. Colorize
   Let’s get started.                                                      The simplicity of the Colorize filter in Add Effect > Misc is
                                                                           also its strength. In some editing applications, it takes two fil-
   Still image grabbed from a video by Footage Firm, Inc.
                                                                           ters and some compositing to achieve this simple color-wash
   CC BY-SA 4.0.
                                                                           effect. It’s refreshing that in Kdenlive, it’s a matter of one
                                                                           filter with three possible controls (only one of which, strictly
                                                                           speaking, is necessary to achieve the look).
                                                                               Its use is intuitive; use the Hue slider to set the color. Use the
                                                                           other controls to adjust the luma of the base image as needed.
                                                                               This is not a filter I use every day, but for ad spots, bum-
                                                                           pers, dreamy sequences, or titles, it’s the easiest and quick-
                                                                           est path to a commonly needed look. Get a company’s color,




   1. Color effect
   You can find the Color Effect filter in Add Effect > Misc
   context menu. As filters go, it’s mostly just a preset; the only
   controls it has are which filter you want to use.
      Normally that’s the kind of filter I avoid, but I have to
   be honest: Sometimes a plug-and-play solution is exact-
   ly what you want. This filter has a few different settings,
   but the two that make it worth while (at least for me) are


   52                                                                   Open Source Yearbook 2015       .. CC BY-SA 4.0 .. O   pensource.com
use it as the colorize effect, slap a logo over the top of the     of the “canvas” upon which you are compositing the burn-in,
screen, and you’ve just created a winning corporate intro.         not the size of the burn-in itself).
                                                                      The text itself doesn’t have to be timecode. From the drop-
                                                                   down menu, you can choose from a list of useful text, in-
                                                                   cluding frame count (useful for VFX, since animators work in
                                                                   frames), source frame rate, source dimensions, and more.
                                                                      You are not limited to just one choice. The text field in the
                                                                   control panel will take whatever arbitrary text you put into it,
3. Dynamic Text                                                    so if you want to burn in more information than just timecode
For the assistant editor, the Add Effect > Misc > Dynamic          and frame rate (such as Sc 3 - #timecode# - #meta.me-
Text effect is worth the price of Kdenlive. With one most-         dia.0.stream.frame_rate#), then have at it.
ly pre-set filter, you can add a running timecode burn-in
to your project, which is an absolute must-have safety             4. Luminance
feature when round-tripping your footage through effects           The Add Effect > Misc > Luminance filter is a no-options
and sound.                                                         filter. Luminance does one thing and it does it well: It drops
                                                                   the chroma values of all pixels in an image so that they are
                                                                   displayed by their luma values. In simpler terms, it’s a gray-
                                                                   scale filter.




  The controls look more complex than they actually are.              The nice thing about this filter is that it’s quick, easy, effi-
                                                                   cient, and effective. This filter combines particularly well with
                                                                   other related filters (meaning that yes, I’m cheating and in-
                                                                   cluding three filters for one).




                                                                     Combining, in this order, the RGB Noise for emulated grain,
                                                                   Luminance for grayscale, and LumaLiftGainGamma for
                                                                   levels can render a textured image that suggests the classic
                                                                   look and feel of Kodax Tri-X [3] film.

                                                                   5. Mask0mate
                                                                   Better known as a four-point garbage mask, the Add Effect
  The font settings are self-explanatory. Placement of the         > Alpha Manipulation > Mask0mate tool is a quick, no-frills
text is controlled by the Horizontal and Vertical Alignment        way to ditch parts of your frame that you don’t need. There
settings; steer clear of the Size setting (it controls the size    isn’t much to say about it; it is what it is.


Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                                   53
CREATING
                ..............   ..
                       .............
   Image by Footage Firm, Inc.                    The confusing thing        is being analyzed, and the Graph, which displays information
                                               about the effect is that      about the marked region.
                                               it does not imply com-            Set the marker using the X, Y, Tilt, and Length controls. The
                                               positing. You can pull        graphical readout of all the relevant color channel information
                                               in the edges all you          is displayed as a graph, superimposed over your image.
                                               want, but you won’t               The readout displays a profile of the colors within the re-
                                               see it unless you add         gion marked. The result is a sort of hyper-specific vector-
                                               the Composite tran-           scope (or oscilloscope, as the case may be) that can help
                                               sition to reveal what’s       you zero in on problem areas during color correction, or
                                               underneath the clip           compare regions while color matching.
   (even if that’s nothing). Also, use the Invert function for the               In other editors, the way to get the same information was
   filter to act like you think it should act (without it, the controls      simply to temporarily scale your image up to the region you
   will probably feel backward to you).                                      want to analyze, look at your readout, and then hit undo to
                                                                             scale back. Both ways work, but the Pr0file filter does feel a
                                                                             little more elegant.

                                                                             7. Vectorscope
                                                                             Kdenlive features an inbuilt vectorscope, available from the
                                                                             View menu in the main menu bar. A vectorscope is not a
                                                                             filter, it’s just another view the footage in your Project Mon-
                                                                             itor, specifically a view of the color saturation in the current
                                                                             frame. If you are color correcting an image and you’re not
   6. Pr0file                                                                sure what colors you need to boost or counteract, looking at
   The Add Effect > Misc > Pr0file filter is an analytical tool,             the vectorscope can be a huge help.
   not something you would actually leave on a clip for final ex-
   port (unless, of course, you do). Pr0file consists of two com-
   ponents: the Marker, which dictates what area of the image




                                                                                 There are several different views available. You can ren-
                                                                             der the vectorscope in traditional green monochrome (like
                                                                             the hardware vectorscopes you’d find in a broadcast control
                                                                             room), or a chromatic view (my personal preference), or sub-
                                                                             tracted from a color-wheel background, and more.
                                                                             The vectorscope reads the entire frame, so unlike the Pr0file
                                                                             filter, you are not just getting a reading of one area in the
                                                                             frame. The result is a consolidated view of what colors are
                                                                             most prominent within a frame. Technically, the same sort of
                                                                             information can be intuited by several trial-and-error passes
                                                                             with color correction, or you can just leave your vectorscope
                                                                             open and watch the colors float along the color wheel and
                                                                             make adjustments accordingly.
                                                                                 Aside from how you want the vectorscope to look, there
                                                                             are no controls for this tool. It is a readout only.

                                                                             8. Vertigo
                                                                             There’s no way around it; Add Effect > Misc > Vertigo is
                                                                             a gimmicky special effect filter. So unless you’re remaking


   54                                                                     Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O  pensource.com
Fear and Loathing or the movie adaptation of Dead Island,            The softness of the border and the aspect ratio of the iris
you probably aren’t going to use it that much; however, it’s       can be adjusted. The Clear Center Size attribute controls
one of those high-quality filters that does the exact trick you    the size of the clear area, which has the effect of adjusting
want when you happen to be looking for it.                         the intensity of the vignette effect.

                                                                   10. Volume
                                                                   I don’t believe in mixing sound within the video editing appli-
                                                                   cation, but I do acknowledge that sometimes it’s just neces-
                                                                   sary for a quick fix or, sometimes, even for a tight production
                                                                   schedule. And that’s when the Audio correction > Volume
                                                                   (Keyframable) effect comes in handy.




   The controls are simple. You can adjust how distorted the
image becomes and the rate at which it distorts. The overall
effect is probably more drunk or vision-quest than vertigo,
but it’s good.




                                                                      The control panel is clunky, and no one really wants to ad-
                                                                   just volume that way, so the effect is best when used directly
                                                                   in the timeline. To create a volume change, double-click the
                                                                   volume line over the audio clip, and then click and drag to
9. Vignette                                                        adjust. It’s that simple.
Another beautiful effect, the Add Effect > Misc > Vignette            Should you use it? Not really. Sound mixing should be
darkens the outer edges of the frame to provide a sort of          done in a sound mixing application. Will you use it? Ab-
portrait, soft-focus nouveau look. Combined with the Color         solutely. At some point, you’ll get audio that is too loud to
Effect or the Luminance faux Tri-X trick, this can be a power-     play as you edit, or you’ll be up against a deadline without a
ful and emotional look.                                            sound engineer in sight. Use it judiciously, watch your levels,
                                                                   and get the show finished.

                                                                   Everything else
                                                                   This has been 10 (OK, 13 or 14) effects and tools that Kden-
                                                                   live has quietly lying around to help your edits become great.
                                                                   Obviously there’s a lot more to Kdenlive than just these little
                                                                   tricks. Some are obvious, some are cliché, some are obtuse, but
                                                                   they’re all in your toolkit. Get to know them, explore your options,
                                                                   and you might be surprised what a few cheap tricks will get you.

                                                                   Links
                                                                   [1]	Kdenlive: https://kdenlive.org/
                                                                   [2]	Frei0r package: https://www.dyne.org/software/frei0r/
                                                                   [3]	Kodax Tri-X film: http://www.kodak.com/global/en/profes-
                                                                        sional/products/films/bw/triX2.jhtml

                                                                   Author
                                                                   Seth Kenlon is an independent multimedia artist, free cul-
                                                                   ture advocate, and UNIX geek. He is one of the maintainers
                                                                   of Slackermedia, a Slackware-based multimedia production
                                                                   project.


Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com                                                                    55
CREATING
               ..............   ..
                      .............

   Adafruit’s best open
   source wearables of 2015                                                                           BY BECKY STERN




   Wearable electronics                           have explod-
                                                  ed in the past
   year. Countless small devices are now on the market for not
   only fitness tracking, but posture improvement, sunscreen
   reminders, muscle-sensing gesture control, and much more.
   As technology on the body becomes more pervasive than
   ever, having open source tools for developing wearable
   technology is more important than ever, so that we can cre-
   ate the future of fashion tech while maintaining data privacy
   of biometric sensor data.
      Adafruit [1] makes open source hardware parts, tutorials,         The book covers the basics of the FLORA family of parts,
   and source code for creating your own DIY electronics proj-        tools, and techniques, and three projects to get you started,
   ects. Here are our favorite open source wearable products          including textile switches, dance-activated lights, and a DIY
   and projects from 2015.                                            GPS watch. There’s a FLORA Book Pack [4] available with
                                                                      parts used in the book, and more for building the dozens of
   FLORA v2 (and Getting Started with                                 other open source FLORA tutorials available on the Adafruit
   Adafruit FLORA)                                                    Learning System [5].
   The FLORA wearable microcontroller [2] got a hardware
   upgrade this year, adding a micro USB port and onboard             SMSsenger bag with FLORA + FONA
   programmable NeoPixel for prototyping color-changing,              One recent project made with FLORA is the SMSsenger
   Arduino-compatible code before ever connecting it up               Bag [6] —an addressable LED matrix displaying text mes-
   with conductive thread or wire. 2015 also brought Getting          sages it receives to its onboard FONA open source cell
   Started with Adafruit FLORA [3], the beginner’s guide to           phone module. Developing wearable devices that commu-
   wearable microcontroller projects.                                 nicate wirelessly is tremendously fun and rewarding, and
                                                                      the open source Arduino libraries for FONA and NeoPixels
                                                                      make it simple for beginners, students, and hobbyists to get
                                                                      started creating personal area network wearables.

                                                                      FLORA Bluefruit LE Module
                                                                      (and Bluefruit LE Connect for iOS/Android)
                                                                      On the topic of networked wearables, the FLORA Bluefruit
                                                                      LE [7] debuted in 2015. This sewable Bluetooth low energy
                                                                      module makes it easy to connect wearables to your phone
                                                                      or tablet for controlling, for example, the color of the LEDs
                                                                      in your dress, and also pushing sensor data to cloud ser-
                                                                      vices like adafruit.io. Build around the Nordic nRF51822,
                                                                      the FLORA Bluefruit LE module can also act as an HID key-
                                                                      board or UriBeacon. The Bluefruit family of boards works
                                                                      great with the (also open source [8]) Adafruit Bluefruit LE
                                                                      Connect apps for Android [9] and iOS [10].


   56                                                              Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O pensource.com
Zac Posen “Made with Code” dress                                 Links
This year, Google teamed up with Zac Posen as part of their      [1]	Adafruit: https://www.adafruit.com/
Made with Code [11] initiative to create an LED dress with       [2]	FLORA wearable microcontroller:
animating patterns coded by girls all over the world. Mad-             https://www.adafruit.com/products/659
dy Maxey helped bring the dress to life and documented its       [3]	Getting Started with Adafruit FLORA:
hardware construction [12] (using FLORA and NeoPixels) in              https://www.adafruit.com/products/1839
an Instructable about the project, which debuted on the run-     [4]	FLORA Book Pack:
way of New York Fashion Week [13].                                     https://www.adafruit.com/products/2404
                                                                 [5]	FLORA tutorials available on the Adafruit Learning System
Arduino GEMMA                                                    [6]	SMSsenger bag:
FLORA’s not the only board that saw a makeover this                    https://learn.adafruit.com/smssenger-bag
year—its little sister GEMMA got a micro USB port and            [7]	FLORA Bluefruit LE:
on/off switch and debuted its new blue cousin, the offi-               https://www.adafruit.com/products/2487
cial Arduino GEMMA [14]. This tiny board built around the        [8]	Adafruit Industries on GitHub: https://github.com/ada-
ATtiny85 microcontroller can control NeoPixels, read sim-              fruit?utf8%3D%25E2%259C%2593%26query%3Dblue-
ple sensors, and is small and low-cost enough to easily                fruit_le_connect
embed in wearables projects. While you can get GEMMA             [9]	Adafruit Bluefruit LE Connect (Android):
v2 in Adafruit or Arduino flavors, the official partnership            https://play.google.com/store/apps/details?id=com.ada-
provides native support for Arduino GEMMA in the Arduino               fruit.bluefruit.le.connect
software IDE, boxed packaging, and best of all supports          [10]	Adafruit Bluefruit LE Connect (iOS): https://itunes.apple.
Arduino.                                                               com/us/app/adafruit-bluefruit-le-connect/id830125974
                                                                 [11]	Made with Code: https://www.madewithcode.com/
                                                                 [12]	Make a Runway Ready Programmable LED Matrix Dress:
                                                                       http://www.instructables.com/id/Make-a-Run-
                                                                       way-Ready-Programmable-LED-Matrix-Dress/?ALL-
                                                                       STEPS&sa=D&usg=AFQjCNFA7DchWaPAdk-
                                                                       8jA8aLO5gef9Rl0w
                                                                 [13]	How To Make a Runway Ready Programmable LED
                                                                       Matrix Dress: https://blog.adafruit.com/2015/09/16/how-
                                                                       to-make-a-runway-ready-programmable-led-matrix-dress-
                                                                       zac_posen-madewithcode-thecrated-wearablewednesday/
                                                                 [14]	Arduino Gemma:
                                                                       https://www.arduino.cc/en/Main/ArduinoGemma

                                                                 Author
                                                                 Becky Stern is a DIY guru and Director of Wearable Electronics
                                                                 at Adafruit.




Open Source Yearbook 2015    .. CC BY-SA 4.0 .. Opensource.com                                                                57
CREATING
               ..............   ..
                      .............

   5 favorite 3D printing
   projects of 2015                                                                 BY HARRIS KENNY




   The desktop 3D                            printing industry con-
                                             tinues to grow at a
   rapid pace. Thanks to its deep-seated commitment to free
                                                                         summer), SatNOGS Client, and SatNOGS Ground Station.
                                                                         Their team uses 3D printing to prototype hardware compo-
                                                                         nents, specifically for use in ground stations. In 2014, Sat-
   software, libre innovation, and open source hardware [1],             NOGS won the prestigious and competitive 2014 Hackaday
   there is a proliferation of projects, products, and companies         Prize [5].
   that also share these values.
                                                                         A SatNOGS version 2 ground station deployed during
     This post highlights five of the top innovative 3D-print-
                                                                         FOSDEM 2015. Photo by Nikos Roussos. CC BY 2.0.
   ing-related projects in 2015, but with so much going on in the
   community there are bound to be great projects that were
   not included.

   OpenBCI
   OpenBCI [2] is dedicated to developing biosensing for ev-
   erybody. Their flagship product, the Ultracortex, is capable
   of recording research-grade brain activity (EEG), muscle
   activity (EMG), and heart activity (ECG). OpenBCI effec-
   tively uses 3D printing for prototyping and production of
   their headsets and included components. Learn more
   about the Ultracortex Mark 3 (GNU-GPLv3 licensed) in the
   OpenBCI store [3].

   Conor Russomanno of OpenBCO describes his latest project
   based on the OpenBCI open source brain-computer interface.
   Photo by old_school_maker. CC BY 2.0.
                                                                         e-NABLE
                                                                         e-NABLE [6] works together to design, improve, and pro-
                                                                         duce hand devices that empower the user. e-NABLE effec-
                                                                         tively created a low-cost, distributed way to give a helping

                                                                         Talon hand, custom e-NABLE prosthetic hand




   SatNOGS
   SatNOGS [4] is a modular and scalable stack for Satellite
   Ground Station implementation. SatNOGS is driven by four
   sub-projects: SatNOGS Network, SatNOGS (launched this


   58                                                                 Open Source Yearbook 2015   .. CC BY-SA 4.0 .. O pensource.com
hand, and created some of the go-to designs to demon-            OctoPrint [18], Slic3r [19], BotQueue [20], and MatterCon-
strate the power of distributed manufacturing through 3D         trol [21] continuing to grow, and rapid growth in the avail-
printing. Some of their most popular projects include The        ability of 3D printing materials.
Raptor Hand [7] (BSD licensed) and the Talon Hand [8]               After a great 2015, projects like this inspire us about the
(GNU-GPLv2 licensed). An exciting related emerging proj-         future and what is possible with a collaborative approach
ect is the HACKberry [9] by exiii (CC0 1.0 Universal and         that respects user freedom.
CC BY-SA 4.0 licensed), a 3D printed bionic hand.
                                                                 Links
Michigan Tech              MOST’s Magneto 3D printer.
                                                                 [1]	What is open hardware?:
                           Photo by J.M. Pearce. GNU Free
Open Sustainability                                                    https://opensource.com/resources/what-open-hardware
                           Documentation License v 1.3.
Technology Lab                                                   [2]	OpenBCI: http://www.openbci.com/
(MOST)                                                           [3]	OpenBCI store: http://openbci.myshopify.com/collections/
MOST [10] is a re-                                                     frontpage/products/ultracortex-mark-3-eeg-headset-kit-as-
search group known                                                     sembly-required
for conducting some of                                           [4]	SatNOGS: https://satnogs.org/
the most cutting edge                                            [5]	SatNOGS wins the 2014 Hackaday Prize:
research on 3D print-                                                  http://hackaday.com/2014/11/13/satnogs-wins-the-2014-
ing and open source                                                    hackaday-prize/
hardware. Earlier this                                           [6]	e-NABLE: http://enablingthefuture.org/
year, their team started                                         [7]	Raptor Hand: http://enablingthefuture.org/upper-limb-pros-
to integrate a new set                                                 thetics/the-raptor-hand/
of recycling codes into                                          [8]	Talon Hand: http://enablingthefuture.org/upper-limb-pros-
all 3D printed polymer                                                 thetics/talon-hand/
designs [11], enabling                                           [9]	HACKberry: http://exiii-hackberry.com/
them to close the ma-                                            [10]	Michigan Tech Open Sustainability Technology Lab (MOST):
terial loop in their lab.                                              http://www.mse.mtu.edu/~pearce/Index.html
They also made great                                             [11]	Polymer recycling codes for distributed manufacturing
strides in low-cost metal printing, addressing the substrate           with 3-D printers: http://www.appropedia.org/Polymer_re-
release problem for metal printing [12]. Learn more about              cycling_codes_for_distributed_manufacturing_with_3-D_
the newest design of their metal printer, code-named Mag-              printers
neto [13] (GNU-GPLv3 licensed).                                  [12]	In Situ Formation of Substrate Release Mechanisms for
                                                                       Gas Metal Arc Weld Metal 3-D Printing:
RepRap                                                                 http://www.appropedia.org/In_Situ_Formation_of_Sub-
RepRap [14] has been instrumental to the early and con-                strate_Release_Mechanisms_for_Gas_Metal_Arc_Weld_
tinued free/libre/open development of desktop 3D printing.             Metal_3-D_Printing
The community continues to grow this year, with early de-        [13]	Integrated Voltage—Current Monitoring and Control of
velopers like Josef Prusa’s Prusa Research [15] growing,               Gas Metal Arc Weld Magnetic Ball-Jointed Open Source
electronics company developer UltiMachine [16] advanc-                 3-D Printer: http://www.appropedia.org/Integrated_Volt-
ing core technologies, software projects like Cura [17],               age%E2%80%94Current_Monitoring_and_Control_of_
                                                                       Gas_Metal_Arc_Weld_Magnetic_Ball-Jointed_Open_
RepRap workshop in Gdańsk, Poland                                      Source_3-D_Printer
                                                                 [14]	RepRap: http://reprap.org/
                                                                 [15]	Prusa Research: http://shop.prusa3d.com/en/
                                                                 [16]	UltiMachine: https://ultimachine.com/
                                                                 [17]	Cura: https://ultimaker.com/en/products/cura-software
                                                                 [18]	OctoPrint: http://octoprint.org/
                                                                 [19]	Slic3r: http://slic3r.org/
                                                                 [20]	BotQueue: https://www.botqueue.com/
                                                                 [21]	MatterControl: http://www.mattercontrol.com/

                                                                 Author
                                                                 Harris Kenny is Vice President of Marketing at Aleph Objects,
                                                                 Inc., makers of the LulzBot line of desktop 3D printers, parts,
                                                                 and plastics. Prior to joining Aleph Objects, he worked in
                                                                 management and ERP consulting.


Open Source Yearbook 2015    .. CC BY-SA 4.0 .. Opensource.com                                                               59
                            .  ........
                              ... .. ...
O P E N S O U R C E . C O M .. .. .. ....
                                         . .
EDITORIAL CALENDAR
                                   ..............   ..
                                          .............
        Would you like to write for us?
        Our editorial calendar includes upcoming themes, community columns, and topic
        suggestions: https://opensource.com/calendar

        Getting Started in Open Source
        We’re looking for articles about how to start using an open source solution or contribute to a project, how
        to find the right open source community to join, advice for making money in open source, how to find (or
        start) local user groups or meetups, and tips for attending tech conferences.

        Careers in Open Source
        We want to hear about your open source-related work, tips for succeeding in a tech career and for show-
        ing open source skills on tech resumes, advice for advancing your career by growing your network, and
        insights into how attending conferences can get you hired.

        Diversity in Open Source
        How did you increase diversity in your project and community? Tell us about your open source-related
        grants or scholarship opportunities . Do you have tips for attracting a more diverse pool of contributors?
        How has increasing diversity in your community helped?

        Open Science
        Interesting open science topics include open hardware tools with sensors being used to take field measure-
        ments; big data processing; education and science software for Linux (for example, Celestia space simula-
        tor, Avogadro for molecular modeling, GRASS/QGIS software for geospatial sciences, R/Julia for statistics,
        and niche applications we’ve never heard of); why openness matters in the sciences; recent discoveries
        made using open tools and/or open data; a roundup of journals being published under open licenses.

        Open Hardware
        Show off your HowTos, tutorials, and demos of open hardware in the wild.

        Open Source in Entertainment
        We’re looking for stories about how open source tools, projects, and communities keep us entertained.

        Open Source Events
        Share best practices for organizing a local meetup or online hack-a-thon, tips for organizing a community
        conference, and lesson learned from hosting or attending an open source-related event.

        Open Source in Education
        Which open source tools are helpful for the classroom? How are open source technologies being used
        or taught in your schools? We’re always excited to hear how open source is helping education, so send
        us your stories.

        Open Source Around the World
        What role does open source play in your country’s government? Which projects are active in your local
        communities? How are humanitarian open source solutions helping international communities? How has
        your work in open source helped you connect with people in other countries and collaborate with interna-
        tional contributors? How does your remote international team collaborate? Tell us about how your career
        in open source has allowed you to travel the globe.


   60                                                      Open Source Yearbook 2015     .. CC BY-SA 4.0 .. O pensource.com
                             .  ........
                               ... .. ...
 O P E N S O U R C E . C O M .. .. .. ....
                                          . .
W R I T E      F O R         U S
                                      ..............   ..
                                             .............
     7 big reasons to contribute to Opensource.com:
             1    Career benefits: “I probably would not have gotten my most recent job if it had not been for my articles on
                  Opensource.com.”



             2     Raise awareness: “The platform and publicity that is available through Opensource.com is extremely
                   valuable.”



             3     Grow your network: “I met a lot of interesting people after that, boosted my blog stats immediately, and
                   even got some business offers!”



             4     Contribute back to open source communities: “Writing for Opensource.com has allowed me to give
                   back to a community of users and developers from whom I have truly benefited for many years.”



             5     Receive free, professional editing services: “The team helps me, through feedback, on improving my
                   writing skills.”



             6     We’re loveable: “I love the Opensource.com team. I have known some of them for years and they are
                   good people.”



             7     Writing for us is easy: “I couldn't have been more pleased with my writing experience.”


     Email us to learn more or to share your feedback about writing for us: https://opensource.com/story
     Visit our Participate page to more about joining in the Opensource.com community: https://opensource.com/participate
     Find our editorial team, moderators, authors, and readers on Freenode IRC at #opensource.com: https://opensource.com/irc




F O L L O W         U S
                             ..............   ..
                                    .............
             Twitter @opensourceway: https://twitter.com/opensourceway
             Google+: https://plus.google.com/+opensourceway
             Facebook: https://www.facebook.com/opensourceway
             Instagram: https://www.instagram.com/opensourceway
             IRC: # opensource.com on Freenode

     All lead images by Opensource.com or the author under CC BY-SA 4.0 unless otherwise noted.


       Open Source Yearbook 2015        .. CC BY-SA 4.0 .. O   pensource.com                                                    61