5 linguagens de programação poderosas para ‘esticar’ seu cérebro

O pessoal da Dev.to fez uma postagem boa falando sobre linguagens de programação e a prática de aprender pelo menos uma nova linguagem de programação por ano. Segue a tradução das melhores partes da matérias feita por Jacob Herrington.

O raciocínio por trás dessa prática tem muito pouco a ver com marketing de si mesmo ou mesmo usando a linguagem. Na realidade, o benefício mais significativo de aprender uma nova linguagem de programação é o alongamento da mente e a criação de novos caminhos neurais que permitem que você examine os problemas de maneiras novas e únicas. Eu compilei esta lista de linguagens principalmente porque eles são linguagens que eu estou interessado em gastar mais tempo aprendendo, mas também porque elas exemplificam características de linguagem específicas e ideologias de programação muito bem.

Ruby

Linguagem Orientada a Objetos criada pelo Dr. Alan Kay, que uma vez disse: “Programação orientada a objetos para mim significa apenas mensagens, encapsular e esconder o estado e extrema ligação de todas as coisas.” Ruby é bom nessas coisas.

Elixir

Elixir é uma linguagem que abraça uma ideia chamada Modelo de Ator, idealizada pelo Dr. Carl Hewitt. No modelo de ator, tudo é um ator. (“Tudo é um ator” soa muito como “tudo é um objeto”, mas vou deixar essas comparações com os acadêmicos). Aprender a pensar sobre os atores é um exercício mental desafiador que levará a enxergar os problemas sob uma nova luz.

Rust

Rust é uma linguagem rápida e compilada que traz algumas idéias novas para a mesa. É expressamente destinado a resolver vários problemas de segurança de memória que surgem ao escrever C ++, que é freqüentemente usado para resolver problemas similares de programação de sistemas.

TypeScript

O alongamento cerebral no TypeScript vem da abordagem incremental na qual ele pode ser adotado e seu foco na tipagem estática. Se, como eu, você vem de um plano de fundo da Web com linguagens como Python ou PHP, a tipagem estática geralmente é um conceito estranho. No entanto, o TypeScript é uma maneira amigável de se apresentar a esse recurso de linguagem útil.

Haskell

Haskell é descrito como “puramente funcional”, o que significa que o estado é inteiramente imutável nessa linguagem de programação. Aprender a trabalhar com um estado totalmente imutável força você a desenvolver uma abordagem totalmente diferente para trabalhar com dados. Trabalhar com a Haskell resultará no desenvolvimento de alguma compreensão do cálculo lambda, que é relevante para toda a programação funcional.

Em resumo, cada uma dessas linguagens tem um jeito diferente de se programar, logo, seu cérebro precisará realmente “estiver” nos conceitos de uso e te levar a estudar e evoluir. É um caminho sem volta!

E aí, conhece alguma dessas LINGUAGENS? Deixe seu comentário.

Fonte: Dev.To

Anúncios

Aula Inaugural 2019.2 Faculdade SENAI PB

No dia 01 de agosto teremos a aula que dará inicio ao semestre 19.2 da faculdade SENAI da Paraíba

No próximo dia 01 de agosto, às 18:30h, teremos uma aula que marcará o inicio do segundo semestre de 2019. O Professor Ricardo Roberto, meu parceiro de sala de aula, estará ministrando uma palestra com uma temática altamente relevante:

Convite especial para quem quer conhecer um pouco mais sobre o curso superior de Automação Industrial da Faculdade SENAI da Paraíba.

Entrada Gratuita! Basta comparecer na Av. das Indústrias, S/N – Distrito Industrial, João Pessoa – PB (clique no endereço para ir pelo Maps)

Cientistas usaram Python para fotografar buraco negro

Várias bibliotecas da linguagem Python fazem parte dos algoritmos para conseguir a primeira foto real de um buraco negro

Você deve ter ouvido falar na famosa “foto do Buraco Negro” que virou manchete nos noticiários mundo a fora. Pois bem, cientistas por trás desta façanha usaram um novo algoritmo para tirar uma foto de um buraco negro. Uma das partes mais interessantes sobre isso é que eles usaram muitas bibliotecas Python para fazer a mágica.

Abaixo segue uma lista de bibliotecas Python mencionada no artigo deles:

Eles também usaram seu próprio código Python personalizado que está disponível no Github do projeto. Caso você queira ter uma ideia geral de como foi feito isso, o vídeo a seguir tem uma explicação mais leiga das idéias por trás de tirar a foto. Foi gravado durante uma boa palestra TED com uma das pesquisadoras:

Fonte: Python Library blog

14 ferramentas que todo analista de processos deveria conhecer

14 ferramentas para analistas de processos que podem otimizar o dia a dia desse profissional.

A empresa SML lançou em seu blog dica de aplicativos super úteis para gestão e análise de processos. As ferramentas para analistas de processos vêm sendo desenvolvidas pelo ramo da tecnologia de informação e trazem, a cada dia, novas funções para serem exploradas. Elas permitem que os profissionais da área eliminem tarefas desnecessárias, reduzindo o tempo de gerenciamento das atividades e integrando sistemas.

Neste artigo, listamos 14 ferramentas para analistas de processos que podem otimizar o dia a dia desse profissional. Dividimos a lista de acordo com as funções: organização de tarefas, gestão de informações, comunicação, videoconferências e mapeamento de processos.

Organização de tarefas

1. Trello

Utilize se você busca organizar manualmente suas tarefas, pois o Trello é uma ferramenta que substitui notas autoadesivas(ou os famosos posts-its), planilhas, agenda, e e-mails. É uma forma de organizar visualmente, em um só lugar, todas as tarefas a serem realizadas.

Além disso, o Trello permite que as listas de afazeres sejam gerenciadas e o andamento seja acompanhado por toda a equipe de forma sincronizada, já que a atualização é instantânea.

Exemplo de tela do Trello
Exemplo de tela do Trello

A ferramenta funciona como uma lista de tarefas, kanban, com cartões que podem ser marcados com cores, status de andamento, responsável pela atividade e prazos. Também permite adicionar comentários e feedbacks e sincronizar com todos os dispositivos. Uma de suas vantagens é a boa visualização de toda a linha de produção das tarefas.

A atualização é instantânea e pode ser visualizada por todo o time. A plataforma é acessada pelo navegador da internet, sem que seja necessário trabalho com sua instalação. O melhor de tudo: há uma versão free bem completa!

2. Asana

Asana é uma plataforma online utilizada para a organização de tarefas e de gerenciamento de tarefas colaborativas. Dentro dessa plataforma, é possível administrar e criar trabalhos, dividir as tarefas de forma rápida e prática, definir responsáveis e prazo, além de convidar seus amigos e colegas de trabalho para participarem da equipe.

Para utilizar a plataforma, é necessário fazer um cadastro, cedendo seu e-mail e informações pessoais. A partir daí, basta criar um time e definir quem serão os convidados do grupo de trabalho.

Após essa etapa de criação, você pode começar a administrar as tarefas, por meio do painel inicial, bastante fácil de entender e de uso bastante intuitivo. A criação de tarefas também se dá nesse mesmo painel.

Gestão de informações

3. OneDrive

OneDrive é uma poderosa ferramenta de gestão de informação que você, analista de processo, pode utilizar. É de fácil acesso e, por ser vinculada à Microsoft, é compatível com vários outros programas da marca.

Dispõe de um serviço de armazenamento em nuvem, bastando uma conta Microsoft. Além de armazenar, é dado ao usuário a opção de definir quais arquivos serão públicos e quais serão privados e disponíveis apenas para pessoas autorizadas. Dessa forma, você consegue compartilhar arquivos com sua equipe facilmente e evita a duplicação de informações e versões de um mesmo documento.

4. Dropbox Paper

Dropbox Paper é um editor colaborativo de documentos. Ele utiliza a tecnologia de armazenamento em nuvem do Dropbox e, a partir daí, torna possível a sincronização em tempo real e a participação de vários colaboradores ao mesmo tempo.

É gratuito e está disponível para diversas plataformas, como Android e iOS. Ele apresenta uma interface intuitiva e bastante simples de ser entendida. Para utilizá-lo, é necessário ter uma conta no Dropbox.

A aparência simples do aplicativo não pode ser confundida com seu potencial, que é alto, por causa, sobretudo, de uma estrutura poderosa. O aplicativo é uma ótima alternativa para você e o seu time, com o diferencial de os conteúdos ficarem salvos na própria plataforma.

5. ECM

ECM é a sigla para Enterprise Content Management. Essa ferramenta permite que as empresas realizem uma melhor organização e administração de tudo aquilo que diz respeito à informação empresarial.

Ela auxilia as empresas com a automatização do desenvolvimento de estratégias, armazenamento de informações, captura de dados e distribuição de documentos. Conta com uma série de tecnologias para centralizar e tornar uniforme o tratamento de informações de diversas origens.

Pode ser utilizada pela empresa de várias formas, com a devida estruturação e padronização dos dados provenientes das diversas áreas da empresa, fazendo com que a sua equipe produza de forma eficiente e evitando erros.

Comunicação

Continue Lendo “14 ferramentas que todo analista de processos deveria conhecer”

#FarmsBeats: projeto de precisão de dados para agricultura

Cientista-chefe da Microsoft apresenta projeto de agricultura de precisão baseado em uso de #dados.

Autor: @microsoftBR

Em visita ao Brasil, @RanveerChandra, cientista-chefe de Azure Global, apresentou para alguns jornalistas e influenciadores o #FarmBeats, um projeto de agricultura de precisão baseado em uso de #dados.

O programa da Microsoft, que faz parte da iniciativa #AIforEarth, impulsiona a transformação digital dos produtores agrícolas com uso de #IA, sensores de baixo custo e drones.

“Um dos problemas que os produtores enfrentam para aplicar soluções digitais em seus negócios é a falta de conectividade no campo. Por isso desenvolvemos o #AirBand, uma tecnologia que usa TV white spaces para viabilizar conexões em áreas rurais”

Ranveer Chandra.

Chandra ainda acrescentou que a agricultura de precisão permite que “os agricultores usem seus recursos como água, terra e fertilizantes com mais sabedoria. Isso melhora a produtividade e reduz os custos, além de evitar desperdícios e de ser melhor para o meio ambiente”.

Fonte: Twitter da Microsoft Brasil

Python, R e Scala: as linguagens da ciência de dados

O Cientista de Dados Igor Bobriakov escreveu um excelente post (em inglês) sobre as principais bibliotecas para Data Science em linguagens Python, R e Scala. Confira a tradução em português

O Cientista de Dados Igor Bobriakov escreveu um excelente post (em inglês) sobre as principais bibliotecas para Data Science em linguagens Python, R e Scala, com um infográfico bastante didático. Neste post você encontra esse excelente trabalho traduzido na íntegra para o português pelo site Ciência e dados. Boa leitura!

Data Science é um campo promissor e empolgante, desenvolvendo-se rapidamente. Os casos de uso e aplicações da Ciência de Dados estão em constante expansão e o kit de ferramentas para implementar esses aplicativos cresce na mesma proporção.

Cada uma dessas linguagens é adequada para um tipo específico de tarefas, além de cada desenvolvedor escolher a ferramenta mais conveniente para si. Muitas vezes, a escolha de uma linguagem de programação é subjetiva, mas, abaixo, tentaremos saudar as forças de cada uma das três linguagens descritas.

Linguagem R

Projetada principalmente para computação estatística, a linguagem R oferece um excelente conjunto de pacotes de alta qualidade para coleta e visualização de dados estatísticos. Outro ponto forte para a Linguagem R é o conjunto de ferramentas bem desenvolvidas para pesquisa reproduzível. No entanto, R pode ser de alguma forma específico e não é tão bom quando se trata de engenharia e alguns dos casos de programação de propósito geral.

Linguagem Python

Python é uma linguagem de propósito geral com um rico conjunto de bibliotecas para uma ampla gama de propósitos. É tão boa para problemas de matemática, engenharia e Deep Learning quanto para manipulação de dados e visualizações. Esta linguagem é uma excelente escolha para especialistas iniciantes e avançados, o que a torna extremamente popular entre os Cientistas de Dados.

Linguagem Scala

Scala é uma solução ideal para trabalhar com Big Data. A combinação Scala e Apache Spark oferece a oportunidade de aproveitar ao máximo a computação distribuída em cluster de computadores. Portanto, a linguagem possui muitas ótimas bibliotecas para aprendizado de máquina e engenharia; no entanto, falta possibilidades de análise e visualização de dados em comparação com as linguagens anteriores. Se você não estiver trabalhando com Big Data, o Python e R podem mostrar um desempenho melhor que Scala. Mas se estiver trabalhando com Big Data, Scala pode ser a melhor opção.

Continue Lendo “Python, R e Scala: as linguagens da ciência de dados”

TDC 2019: Belo Horizonte

Inscrições para o The Developers Conference BH estão abertas até o dia 15 de junho

TDC – The Developer´s Conference – é o maior evento relacionado a desenvolvimento de software no Brasil conectando organizadores de meetups e eventos, palestrantes, empresas e patrocinadores em uma plataforma única, empoderando o ecossistema local de cada região onde é realizado.

TDC é uma conferência muito dinâmica com objetivo de apresentar os tópicos mais importantes de acordo com as necessidades locais e internacionais e, por esta razão, existem mais do que dez trilhas paralelas por dia.

Este ano já aconteceu em Florianópolis/SC em abril. Ainda este ano teremos em Belo Horizonte (Junho), São Paulo (Julho), Recife (Outubro) e Porto Alegre (Novembro.

Interessado? Veja mais sobre o evento em:
http://www.thedevelopersconference.com.br/tdc/2019/index.html