Fim de ano chegou e alguns projetos open source se destacaram durante esses últimos tempos, principalmente do ano passado pra cá. Assim, segue lista com 15 projetos open source que mais se destacaram em 2015.
A lista a seguir está disposta em ordem alfabética e não representa ou qualifica o melhor projeto!
1 – Ansible
Ansible é uma plataforma de automação de TI, simples, que faz com que suas aplicações e sistemas fiquem fáceis de implementar. Evite criar scripts personalizados para implantar e atualizar o seu parque tecnológico; usando SSH (por exemplo). O Ansible se posiciona na frente da geração dos sistemas de gerenciamento de configuração (configuration management). Em resumo, o Ansible é independente de linguagem e agente remoto instalado, usa o SSH como camada de comunicação; e é fácil de instalar sendo capaz de se integrar com qualquer linguagem que tenha suporte a JSON.
2 – Apache Mesos
Apache Mesos é um gerenciador de cluster que oferece isolamento eficiente de recursos e de partilha entre as aplicações ou estruturas distribuídas. Mesos é um software de código aberto originalmente desenvolvido na Universidade da Califórnia em Berkeley. Ele fica entre a camada de aplicativo e do sistema operacional e torna mais fácil de implantar e gerenciar aplicativos em ambientes em cluster em grande escala de forma mais eficiente. Ele pode executar vários aplicativos em um pool compartilhado de forma dinâmica de nós. Alguns cases, incluem Twitter, Airbnb, MediaCrossing e Xogito.
3 – Apache Spark
O Spark é um framework para processamento de Big Data construído com foco na velocidade, facilidade de uso e análises sofisticadas. Está sendo desenvolvido desde de 2009 pelo AMPLab da Universidade de Califórnia em Berkeley e em 2010 seu código foi aberto como projeto da fundação Apache. O Spark tem muitas vantagens se comparado as outras tecnologias de Big Data e do paradigma MapReduce, como o Hadoop e o Storm.
Nesse ano (2015), foi anunciado um novo recorde mundial em processamento de dados definido pelo Apache Spark; 100 TB de dados em apenas 23 minutos. Assim, esse projeto merece um destaque especial, pois vem de uma ascensão muito grande.
4 – Blender
Blender foi criado em dezembro de 1993 e nasceu, para o mundo como um produto utilizável, em agosto de 1994; como uma aplicação integrada, que permitia a criação de uma ampla gama de conteúdos 2D e 3D. Destinado a profissionais de mídias digitais, o Blender pode ser usado para criar visualizações 3D, imagens foto realísticas, bem como de difusão e vídeos com qualidade de cinema, enquanto incorpora um motor 3D de tempo real (Blender Game Engine) que permite a criação de conteúdo 3D interativo. Originalmente desenvolvido pela empresa ‘Not a Number’ (NaN), o Blender é agora continuado como Software Livre, com o código fonte disponível sob a licença GNU GPL. Seu desenvolvimento continua agora desenvolvido pela Blender Foundation, na Holanda.
Nesse ano (2015), o software Blender vem sendo utilizado no processo de reconstrução facial de animais; como ganso, papagaio e tucano. Além disso, diversos projetos de filmes curta metragem.
5 – D3
D3.js é uma biblioteca JavaScript para manipulação de documentos com base em dados. D3 (Data-Driven Documents) ajuda tornar os dados legíveis usando HTML, SVG e CSS. Tem foco em padrões web onde utiliza recursos dos navegadores modernos, combinando componentes de visualização poderosas e uma abordagem orientada a dados para manipulação DOM (Document Object Model).
Como vivemos numa época onde existem uma quantidade enorme de informações (dados), é muito importante que existam ferramentas de manipulação de dados que venham facilitar nossa leitura da informação. Por isso, o D3 obteve destaque esse ano (2015).
6 – Docker
Docker é um projeto de código aberto que automatiza a implantação de aplicativos dentro de recipientes de software (containers), fornecendo uma camada adicional de abstração e automação de virtualização de sistema de nível operacional em Linux, Mac OS e Windows. Segundo uma análise da 451 Research, o Docker é uma ferramenta que pode empacotar um aplicativo e suas dependências em um recipiente virtual que pode ser executado em qualquer servidor Linux. Isso permite flexibilidade e portabilidade de onde o aplicativo pode ser executado, independentemente do seu local de instalação; como nuvem pública, nuvem privada, entre outros.
O Docker é uma tecnologia que vem de uma ascendente desde de 2013; e vem crescendo cada vez mais. A combinação da leveza do Docker com o fluxo de trabalho, rápido e a facilidade para usar; fez com o Docker tornar-se uma ferramenta perfeita para adoção da cultura DevOps no ambiente de trabalho.
7 – Git
Git é um sistema de controle de versão de arquivos, com ênfase em velocidade. O Git foi inicialmente projetado e desenvolvido por Linus Torvalds para o desenvolvimento do kernel Linux, mas foi adotado por muitos outros projetos. Cada diretório de trabalho do Git é um repositório com um histórico completo e habilidade total de acompanhamento das revisões. Através deles podemos desenvolver projetos na qual diversas pessoas podem contribuir simultaneamente no mesmo, editando e criando novos arquivos e permitindo que os mesmos possam existir sem o risco de suas alterações serem sobrescritas. O Git é um software livre, distribuído sob os termos da versão 2 da GNU General Public License.
Desde da sua criação, o git rapidamente se tornou a ferramenta mais popular para controlar alterações em arquivos. Git ajuda no desenvolvimento colaborativo e melhora o fluxo de trabalho de um projeto.
8 – Kubernetes
Kurbenetes é um sistema de gerenciamento de contêineres virtuais, desenvolvido pela Google. Conforme notícia, a Google “disseminou sua mágica para operação de aplicações de larga escala na web aos administradores de TI corporativos”. Esse ano (2015) foi lançada uma nova versão do Kubernetes para o mercado em geral.
O Kurbenetes entra numa tendência emergente na abordagem de design dos sistemas, o “micro-services” que divide as aplicações em componentes distintos, unindo-os em contêineres virtuais capazes de serem movidos ou duplicados como forma de lidar com pesadas cargas de trabalho.
6 maneiras para você ajudar a comunidade Linux crescer cada vez mais
9 – Mattermost
Mattermost é uma ferramenta moderna para conversas instantâneas (IM) entre equipes de trabalho. Dispõe de chats privados e públicos. Atualmente em sua versão beta. Tem uma interface muito semelhante ao Slack (proprietário) e uma alternativa interessante a esse chat corporativo que investiu bastante esse ano. Se você já está usando Slack, há uma função fácil de importação que lhe permite migrar seus canais atuais e arquivos. Mattermost também integra em sua organização de sistemas de autenticação LDAP ou Active Directory existente.
10 – OpenDayLight
O Projeto OpenDaylight, fundado em 2013, é open source e apoiado como projeto Colaborativo da Linux Foundation. O objetivo do projeto é acelerar a adoção de redes definidas por software (SDN) e criar uma base sólida para a Virtualização das Funções da Rede (NFV). O software é escrito em Java.
11 – Piwik
O Piwik é uma solução open source para criar relatórios detalhados do acesso aos nossos sistemas. O Piwik consegue produzir relatórios com base ao número de acessos únicos de utilizadores, Keywords, browsers, entre outros. A plataforma foi desenvolvida em PHP e utiliza o MySQL como SGBD. Desta forma, basta ter, por exemplo, um servidor web com suporte para essas tecnologias e em alguns minutos o PiWiki estará funcinando. Para cada site é gerado um código para tracking em javascript, que deverá ser colocado no código do seu site.
3 alternativas open source para o Google Analytics
12 – R
Na era do big data, agora pode ser um bom momento de aprender a linguagem R. Ela se tornou a linguagem de programação mais usada por analistas de dados e outros que se interessam por estatística ou gráficos. No início deste ano (2015), a R Consortium tornou-se um projeto colaborativo apoiado pela Linux Foundation.
13 – SugarCRM
SugarCRM é uma ótima solução para as organizações que desejam obter o controle sobre seus contatos. É um produto CRM (Customer relationship management) corporativo com módulos para gerenciamento de empresas e divisões, contatos, oportunidades e outros. Sendo um produto open source, é distribuído gratuitamente na versão Sugar Community Edition.
14 – Taiga
Atualmente, com métodos como o Agile se tornando cada vez mais populares, tornou-se essencial possuir uma ferramenta de gerenciamento de projetos. Assim, ainda em estágio beta de desenvolvimento, foi disponibilizado o Taiga. Uma ferramenta de código aberto focada em gerenciamento de projetos usando a metodologia Agile como base para a maior parte de suas ideias. Ele tem alguns recursos bem interessantes para o gerenciamento de projetos, bem como: backlog, separação de tarefas por sprints, Gráfico de burndown, entre outros.
15 – Vagrant
Vagrant é uma ferramenta de linha de comando para deploy e configuração de máquinas virtuais. Com ele, ambientes ficam portáteis. Os dados que definem o ambiente são armazenados em arquivos de texto, tornando fácil de controlar e gerenciar as máquinas virtuais. Para um desenvolvedor, o Vagrant permite configurar ambientes de desenvolvimento em máquina local que são quase idêntico ao ambiente de produção, independentemente do sistema operacional hospedeiro.
A lista é realmente incrível. Não sei se colocaria na mesma ordem, pois pra mim o docker e kunernets trouxeram incríveis inovações no modo como trabalhamos com virtualização.
Obrigado pelo seu comentário. Realmente, Docker e Kunernets contribuíram bastante no ramo da virtualização.
Sobre a disposição da lista, ela se encontra em ordem alfabética.