Pesquisa de Desenvolvedores IoT 2017

IoT Developers Survey 2017 - Eclipse Foundation

Pelos últimos três anos, a Eclipse Foundation tem rastreado as tendências dos desenvolvedores IoT através de uma pesquisa anual. A Pesquisa de Desenvolvedores IoT foi realizada em 2015, em 2016 e agora também neste ano de 2017. Os resultados da terceira edição da pesquisa foram liberados em abril e trazem alguns insights interessantes. Dentre as diversas informações da pesquisa, destacam-se as indústrias que têm adotado soluções IoT, as principais preocupações dos desenvolvedores e também as ferramentas que estão sendo utilizadas no desenvolvimento das soluções.

A pesquisa é resultado da colaboração entre grupos de pesquisa de IoT, incluindo o IEEE. Cada membro promoveu a pesquisa para a sua respectiva comunidade e atingiu um total de 713 respondentes. Como a própria Eclipse Foundation salienta, os resultados da pesquisa devem ser comparados com outros dados da indústria. Como toda pesquisa, existem tendências inerentes e é importante cruzar esses dados com o de outras pesquisas.


Para vídeos e tutoriais, acesse meu canal no YouTube: Engenheiro Jair Junior


Principais tendências da Pesquisa de Desenvolvedores IoT 2017

Quatro das principais tendências identificadas na pesquisa são: 1) Crescente adoção da IoT pela indústria; 2) Preocupação quanto à segurança dos dispositivos; 3) Principais linguagens de programação utilizadas de acordo com o segmento da solução; e 4) Principal sistema operacional utilizado para o desenvolvimento das soluções.

-> Crescente adoção da IoT pela indústria

Os participantes da pesquisa 2017 se mostraram engajados num conjunto mais diverso de indústrias. Plataformas IoT (middleware) e automação residencial continuam a liderar o ranking, mas automação industrial, cidades inteligentes e gestão de energia mostraram um crescimento significativo entre 2016 e 2017.

Adoção da indústria por soluções IoT
Figura 1 – Adoção da Internet das Coisas por diferentes segmentos da indústria.
Fonte: IoT Developer Survey 2017 – Copyright: Eclipse Foundation.

Middleware é tipo de software que interliga diferentes plataformas, processando suas entradas e saídas para que elas possam conversar entre si. Essas soluções se tornam necessárias, desde que o universo IoT ainda não se encontra devidamente padronizado. Assim, soluções desse tipo, permitem integração entre plataformas oriundas de diferentes fabricantes.

-> Segurança é a principal preocupação no desenvolvimento

A Segurança continua sendo a principal preocupação dos desenvolvedores com 46,7% dos respondentes indicando isso. Interoperabilidade (24,4%) e Conectividade (21,4%) são as preocupações seguintes citadas. Em especial, a Interoperabilidade mostrou uma tendência de queda desde 2015, o que pode ter sido uma contribuição do desenvolvimento dos middlewares.

Preocupações no desenvolvimento de soluções IoT
Figura 2 – Principais preocupações no desenvolvimento de soluções em Internet das Coisas.
Fonte: IoT Developer Survey 2017 – Copyright: Eclipse Foundation.

A pesquisa também revelou quais tecnologias estão sendo utilizadas para prover segurança nos dispositivos desenvolvidos. As duas principais tecnologias foram a Segurança na Comunicação (através de protocolos tais como o TLS e DTLS) (48,3%) e também a Criptografia de Dados (43,2%).

-> Principais linguagens de programação

Java e C são as principais linguagens de programação no universo da Internet das Coisas juntamente com o uso significativo de C++, Python e JavaScript. Confira a seguir o resultado geral das linguagens de desenvolvimento.

Linguagens utilizadas no desenvolvimento IoT
Figura 3 – Resultado geral: principais linguagens de programação utilizadas no desenvolvimento de soluções IoT.
Fonte: IoT Developer Survey 2017 – Copyright: Eclipse Foundation.

Neste ano, contudo, foi questionado o uso das linguagens por categoria: Dispositivos Restritos, Gateways IoT e Plataformas em Nuvem. Através dessa divisão em categorias, percebeu-se que a escolha da linguagem depende da finalidade do software desenvolvido.

  • Em Dispositivos Restritos: C (56,4%) e C++ (38,3%) são as linguagens dominantes sendo utilizadas. Java (21,2%) e Python (20,8%) também são utilizadas; o uso de JavaScript (10,3%) é mínimo.
  • Em Gateways IoT: a escolha da linguagem é mais diversificada. Java (40,8%), C (30,4%), Python (29,9%), e C++ (28,1%) estão sendo utilizados. JavaScript e Node.js têm uma pequena participação.
  • Em Plataformas em Nuvem: Java (46,3%) aparece como linguagem dominante. JavaScript(33,6%), Node.js (26,3%) e Python (26,2%) também têm o seu espaço. Não surpreendentemente, a utilização de C (7,3%) e C++ (11,6%) cai significativamente.

Fica claro que o desenvolvimento de soluções IoT requer um conjunto diverso de habilidades em linguagens de programação. A linguagem escolhida realmente depende do dispositivo alvo a ser desenvolvido.

-> Linux é o principal sistema operacional

O Linux continua sendo o principal sistema operacional para Internet das Coisas. Neste ano, os respondentes da pesquisa foram questionados a respeito do sistema operacional por categorias. Em dispositivos limitados, o Linux (44,1%) é o mais popular, porém a segunda alternativa é a abordagem Sem Sistema Operacional / Bare Metal. Em Gateways IoT, o Linux (66,9%) se mostra ainda mais popular seguido por seu concorrente Windows (20,5%).

A pesquisa também perguntou qual a distribuição do Linux está sendo utilizada. O Raspbian (45,4%) e o Ubuntu (44,0%) estão liderando o ranking.

Distribuições do Linux mais utilizadas em IoT
Figura 4 – Distribuições do Linux mais utilizadas em dispositivos IoT. Engloba Dispositivos, Gateways e Plataformas em Nuvem
Fonte: IoT Developer Survey 2017 – Copyright: Eclipse Foundation.

É natural pensarmos que um desenvolvedor escolha um SO que suporte a variedade de linguagens mostradas anteriormente. Então, não é de se surpreender que o Linux seja o favorito devido à sua variedade de distribuições, ferramentas, linguagens suportadas e bibliotecas que tornam o desenvolvimento mais rápido. O próprio kernel deve ser o segredo para o sucesso, pois é super estável e muito bem conhecido por diversos profissionais. Além disso, possui a capacidade de utilizar drivers para se adaptar a diversos tipos de hardwares existentes.

Este resultado também nos leva a imaginar como estão indo os sistemas operacionais concorrentes do Linux. Em 2017, Windows teve um considerável salto em relação aos anos anteriores. Outros sistemas operacionais, tais como o FreeRTOS e Contiki parecem estar ganhando espaço.


Aprenda a criar gráficos super personalizados: Criando gráficos no GNU Octave


Pesquisa na íntegra

Você pode conferir a pesquisa completa aqui. A pesquisa também mostra as Plataformas em Nuvem que estão sendo utilizadas, bem como os Protocolos de Conectividade escolhidos. Outros dados coletados são: arquitetura de hardware, IDE’s utilizadas, adoção de padrões pelos desenvolvedores, participação open source e muito mais.

Sobre

Jair Junior é Bacharel em Engenharia Eletrônica pela Universidade de Brasília [2014] com ênfase em microeletrônica. Suas especialidades na área são microcontroladores, sistemas embarcados e projeto de hardware. Também possui conhecimentos aprofundados em aplicações web e processamento digital de imagens. Atualmente, é aluno de pós-graduação lato sensu da PUC Minas no curso de Desenvolvimento de Aplicações Web. Ademais, tem como hobbies viajar, praticar esportes na natureza, apreciar cervejas artesanais e escutar um bom e velho rock 'n roll. Para mais detalhes, acesso a página sobre o autor.

Ver todos os posts de

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *