sexta-feira, 18 de maio de 2018

Pluraridade: A palavra chave da nova arquitetura de software


#engenhariaDeSoftware #arquiteturaDeSoftware #microsserviços #sistemasReativos

Pluralidade! Sim! O novo software corporativo não pode mais ser chamado assim... Você desenvolve um software para sua empresa, compartilhando recursos com seus parceiros, fornecedores e até com o Governo. O software, hoje em dia, é mais "federativo" do que "corporativo", ou seja, você não cria software pensando só na sua plataforma.

Vou tentar explicar alguns dos "drivers" por trás dessa mudança...


quinta-feira, 17 de maio de 2018

Novo livro lançado! Datascience para programadores - Com Python!


#datascience #python #machineLearning #deepLearning #bigData #tensorFlow

Finalmente, saiu meu novo livro!

Datascience para programadores - Usando python, pela Editora Ciência Moderna! Um guia completo sobre Datascience e suas técnicas, voltado para programadores. Ele também ensina a utilizar a linguagem python, uma das mais populares do momento!
Aprenda a usar conceitos de estatística, como: probabilidades, parâmetros, inferência e regressão. Veja os recursos sensacionais do python, como: numpy, scikit-learn e também o sensacional TensorFlow, da Google.

Está esperando o quê? Compre já o seu! https://www.lcm.com.br/site/#/livros/detalhesLivro/data-science-para-programadores---um-guia-completo-utilizando-a-linguagem-python.html

Seja reativo! Estude "Observables"


#engenhariaDeSoftware #softwareReativo #RxJS #Observables
Um primeiro passo para desenvolver sistemas reativos é estudar um framework. Eu recomendo começar pelo RxJS, utilizado pelo Angular 2+. Entender "Observables", "Events", "State Stores" vai lhe dar uma visão melhor sobre essa evolução tecnológica, sem caô de vendedor. 
Em vez de ouvir os outros falarem em "disrupção" e "transformação digital", disrompa o discurso deles!

As principais ferramentas de Bigdata são gratuitas!


#bigdata #hadoop #spark #python
Sabe o que é Hadoop? E o que é Spark? Sabe o que é Map/Reduce? Sabia que ambos são gratuitos e que você NÃO PRECISA DE CONTRATO COM FORNECEDORES? Que tal aprender Bigdata sem caô?
Enão, por que vai ter que pagar para aprender?

Enfrente os caozeiros de bigdata de frente, com os meus tutoriais!

http://bigdatabigbusiness.info/alittleword/

quarta-feira, 16 de maio de 2018

IoTreta: Agora com Raspberry!


#iot #raspberry #iotreta
Em breve, um tutorial utilizando Raspberry PI! Vamos desenvolver uma estação de controle de poluição (GHG) e subir para a Amazon, usando Node-Red!
Você já sabe, não? Aqui, não tem caô de vendedor!

Quer fazer software reativo? Abra sua mente!


#frontend #backend #web #rest #microsserviços #javascript #react #redux #flask #python
Só no meu blog: "reactdontpanic.com" você encontra isso!
Aprenda a criar uma app simples, porém completa, usando React + Redux + Redux-form + Flask(python).

Entre no mundo do software reativo de cabeça!

http://reactdontpanic.com/redux_form/

Você faz software reativo?


#reactiveSoftware #engenhariaDeSoftware
Sabe o que são sistemas reativos? Já leu o "Manifesto Reativo"? Não? Bom, que tal aprender REACT, o framework frontend mais REATIVO do mundo?
http://reactdontpanic.com

terça-feira, 15 de maio de 2018

Desacople sua API REST!

#engenhariaDeSoftware #REST #API

Tenho visto muitos problemas com APIs REST, mas há um que é extremamente grave e as pessoas não se dão conta: Acoplamento entre Cliente e Servidor da API.

Neste breve artigo, procurarei mostrar quais são os problemas e as alternativas a esta prática.


segunda-feira, 14 de maio de 2018

sexta-feira, 11 de maio de 2018

Como estamos desatualizados!!!


#engenhariaDeSoftware #sistemasReativos #CQRS #EventSourcing

Cara, estamos muito, mas MUUUIIIITO desatualizados!

A engenharia de software está sofrendo uma verdadeira revolução, e nem todo mundo se deu conta. A maneira que modularizamos, componentizamos, implementamos comunicação e persistimos em nossos aplicativos mudou completamente.

quinta-feira, 10 de maio de 2018

IoTreta: Da AWS para o seu Arduino

#iot #arduino #raspberry #aws #twitter #nodered #javascript
Conforme prometido, eis o caminho de volta: Da AWS para o Arduino! Veja como assinar tópicos no servidor MQTT da AWS e obter mensagens para serem processadas por um dispositivo.
http://iotreta.com/amazon_arduino/

Sabia que a linguagem R pode lhe ajudar a arrumar um emprego?


#desemprego #estudo #datascience #R
Sabia que a linguagem R pode lhe ajudar a arrumar um emprego? Que tal aprender de graça?
http://datalearninghub.com/R-course/

quarta-feira, 9 de maio de 2018

Seja disruptivo: Entregue o que o Cliente pediu!

#projeto

Uma maneira de ser "disruptivo" é passar a entregar o que o Cliente quer, no prazo e no custo combinados! Por que não tenta?

Sério! As pessoas gastam dinheiro, indo ouvir palestras onde os caras falam em "ser o disruptor para não ser o disruptido", mas, no fundo mesmo, não te ajudam a produzir melhor e entregar no prazo. Isso sim, é ser disruptivo!

https://www.linkedin.com/pulse/manter-o-foco-objetivo-do-projeto-cleuton-sampaio-de-melo-junior/

Queria aprender datascience mas não sei programar...

#R #datascience #machineLearning #programação

Seus problemas acabaram! 

Quer aprender a linguagem R sem complicação? Não sabe programar? É aqui mesmo!

Com R, você fará tudo! De apps comerciais até soluções de Bigdata. Rápido, simples e sem aquelas pelancas, que o pessoal de TI adora enfiar no seu software!

Outro dia, um leitor comentou que queria aprender datascience, porém, não sabia programar... Bom, está esperando o quê? Leia o meu artigo e depois faça o meu curso gratuito!

https://www.linkedin.com/pulse/r-em-gotas-variáveis-cleuton-sampaio-de-melo-junior/

Esqueça os papos-furados de vendedores! Estude IoT na IoTreta!


#iot #arduino #nodejs #nodered #raspberry #aws #mqtt
Leve #iot a sério também! Esqueça os papos-furados de vendedores, e faça os tutoriais da IoTreta!
Sério? O cara mostrou um robozinho, montado a partir de um Kit pronto, e você ficou pensando que era IoT? Fala sério! IoT é o que os tutoriais da IoTreta te ensinam! Deixe de ser boba ou bobo, e leve IoT a sério!
Em breve, um novo vídeo e um tutorial mais sinistro ainda!
http://iotreta.com

terça-feira, 8 de maio de 2018

Por que não "go"?


#engenhariaDeSoftware #go Uma das maiores síndromes em engenharia de software é o "acoplamento de ferramenta", quando as equipes são "viciadas" em uma só linguagem ou plataforma. Você já experimentou a linguagem "Go", da Google? Seu foco é em programação concorrente e não tem as idiossincrasias típicas das linguagens dos anos 80, excessivamente focadas em OOP (como se fosse uma "benção"). Tente!

https://golang.org

Gestão de configuração precisa ser uma dor de cabeça?


#engenhariaDeSoftware #projeto #ti #negócios #falandosobresoftware
Você sabe o que é gestão de configuração? http://falandosobre.software/gestao_configuracao/

segunda-feira, 7 de maio de 2018

Python em quarto lugar em popularidade


#engenhariaDeSoftware #linguagens
Python em quarto lugar em popularidade na Lista TIOBE!
https://www.tiobe.com/tiobe-index/

ORM é um atoleiro?


#engenhariaDeSoftware #oop #pelancas
"falandosobre.software"
“ORM represents a quagmire which starts well, gets more complicated as time passes, and before long entraps its users in a commitment that has no clear demarcation point, no clear win conditions, and no clear exit strategy.”
("ORM representa um atoleiro que começa bem, fica mais complicado à medida que o tempo passa e, em pouco tempo, aprisiona seus usuários em um compromisso que não tem um ponto de demarcação claro, condições de vitória claras e nenhuma estratégia de saída clara.")

Esta definição, que está citada no excelente artigo de Mark Rickerby, é uma visão perfeita do que acontece quando embarcamos nessa tragédia do software corporativo.

https://maetl.net/talks/rise-and-fall-of-orm

OOP é um passo em falso?


#engenhariaDeSoftware #oop #pelancas
"falandosobre.software"
"Object-oriented programming languages are a major misstep; a tortuous detour that computer scientists should never have taken" - Ben Lynn, Phd.
("Linguagens de programação orientadas a objetos são um grande passo em falso; um desvio tortuoso que os cientistas da computação nunca deveriam tomar")

Agora, com o tempo e a sabedoria, tenho certeza que sim! OOP é um erro gigantesco, que leva tudo ao caos... Ainda mais se associada a frameworks e patterns "malucos", cujo objetivo final é nebuloso. Mas não precisa acreditar em mim. Leia o artigo de Ben Lynn.

http://crypto.stanford.edu/~blynn/c/object.html

sábado, 5 de maio de 2018

Tudo sobre projetos de software


#engenhariaDeSoftware #projetos
Vem aí meu novo blog temático: "falandosobre.software" (isso mesmo, sem pontoCom!). Um papo "cabeça" para quem trabalha ou gerencia projetos de software, incluindo a galera do Agile! Aguarde... vídeos etc.

sexta-feira, 4 de maio de 2018

OOP Bullshit


#engenhariaDeSoftware #pelancas #oop
"Não acredite em mim, sou apenas um Brasileiro"
"Object oriented programs are offered as alternatives to correct ones" - Edsger W. Dijkstra
("Programas OO são oferecidos como alternativas aos programas corretos").

O artigo que estou recomendando é curto e sensacional! Uma das suas melhores partes é:

"Recently, I was trying to convince a few of my readers that a better understanding of an object in OOP would help us solve many problems in existing pseudo-object-oriented languages. Then, suddenly, the question came up: "What problems?"

("Recentemente, estava tentando convencer alguns dos meus leitores que uma melhor compreensão do que seria um Objeto, dentro da OOP, poderia nos ajudar a resolver muitos problemas, nas linguagens pseudo-OOP existentes. Então, de repente, a questão surgiu: Que problemas?")

Leia: https://www.yegor256.com/2016/08/15/what-is-wrong-object-oriented-programming.html

IoTreta: Estamos chegando ao fim do primeiro ciclo completo!

#iot #nodejs #javascript #arduino #raspberry #aws
Estamos chegando ao fim do primeiro ciclo completo: Do Arduino para o #AWSIoT e de volta! Em breve! 

Vou publicar um tutorial e um vídeo, explicando um sistema completo, com envio de dados ao MQTT da AWS e outro dispositivo subscrevendo os eventos e atuando. Em breve. Só aqui, só comigo!

quinta-feira, 3 de maio de 2018

Complexidade


#pensamentoDoDia
"There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult." - C.A.R. Hoare, Cientista da Computação e inventor do QuickSort.
("Há duas maneiras de construir um projeto de software: Uma maneira é faze-lo tão simples, que, obviamente, não existem deficiencias, e a outra é faze-lo tão complicado que não existem deficiências óbvias. A primeira maneira é muito mais difícil.")

Não acredite em mim! Sou apenas um Brasileiro...

#engenhariaDeSoftware #pelancas #oop #orm
Ok, você não precisa acreditar em mim, afinal, sou apenas um Brasileiro, não? Apesar de 40 anos de experiência, e quase 30 livros publicados, continuo sendo um Brasileiro.
Então, leia este artigo sobre #oop: http://www.smashcompany.com/technology/object-oriented-programming-is-an-expensive-disaster-which-must-end
E este artigo sobre #orm: https://www.yegor256.com/2014/12/01/orm-offensive-anti-pattern.html. São antigos, mas vão direto ao ponto.
COMPLICAR É BENEFICIAR APENAS AOS FORNECEDORES DE SOFTWARE E HARDWARE!

quarta-feira, 2 de maio de 2018

Servindo recursos REST MongoDB com Python

#python #mongodb #servidores #http
Um tipo de app muito popular é RESTful Service Python servindo recursos de um banco MongoDB.
Veja no "pythondrops.com" o meu novo tutorial:
http://pythondrops.com/servindo_mongodb/

Como calcular o percentual de gordura do seu software


Sim, você leu corretamente! O software que criamos tem muita coisa que serve para nada, ou seja: pelancas e gordura, mas que nós mesmos "enfiamos" nele por comodismo ou comprometimento.

Aqui vai uma fórmula simples para calcular o percentual de "gordura" e "pelanca" que nosso software tem, e também o quanto gastamos com isso. Se você é um engenheiro ou arquiteto de software, pode otimizar seu projeto com isto, se você é um cliente, pode cortar custos.