domingo, 11 de agosto de 2019

Sobre inovação

Você sabia que a Netflix foi fundada em 1997? E que esta empresa surgiu com um serviço de entrega de DVD via correios? Veja: https://pt.wikipedia.org/wiki/Netflix.


Por que estou começando este post com essas provocações? Porque quero dizer que um projeto de inovação digital leva bastante tempo para ter sucesso.

Imaginamos, muitas vezes, que estes cases de sucesso surgiram do nada e que conseguiram crescer em pouco tempo. Mas não é bem assim! Poderia citar o caso da Amazon e outros casos famosos.

Então, fique atento. Inovar exige paciência, persistência e muito estudo.

sábado, 27 de abril de 2019

Discussão do Post Anterior

Com relação ao post anterior (https://helderaragao.blogspot.com/2019/04/entender-requisitos-funcionais.html), segue a discussão:

Primeiro, acredito que boa parte dos programadores iriam atender a esta minha demanda implementando uma média aritmética. Por que? Porque é o mais comum. Mas e se eu quisesse uma média ponderada? Esta é a questão, o correto em qualquer caso de levantamento de requisito é perguntar ao cliente o que ele de fato deseja e, para isso, não temos escolha a não ser reuniões e mais reuniões. Ou seja, muita entrevista e tentativa de entendimento.

Costumo dizer em sala de aula aos alunos: você profissional de TIC que precisa entender a área do seu cliente, pois o contrário é mais difícil. Portanto, desenvolver um sistema contábil significa estudar contabilidade. Desenvolver um sistema médico é, sim, estudar muito sobre medicina.

O aluno de TIC precisa entender que desenvolvemos sistemas para pessoas, portanto, é um curso que exige conhecimento na área de Humanas.

quinta-feira, 18 de abril de 2019

Entender requisitos funcionais

Um dos maiores problemas no desenvolvimento do software é entender o que o usuário (cliente) deseja. Vários projetos de software fracassam por conta desta etapa. 

Costumo alertar este problema para meus alunos e abordo um exemplo simples até mesmo na disciplina de primeiro semestre (algoritmo). Como você desenvolveria uma solução para atender ao cenário abaixo?

O usuário deseja um software para calcular a média de duas notas. Como você desenvolveria? Fica para o próximo post!

domingo, 31 de março de 2019

Sobre Frameworks ou tecnologias para desenvolvimento!

É uma pergunta recorrente em sala de aula: professor, devo estudar o framework x,y ou z? Está sendo muito utilizado o framework A professor, vale a pena. O aluno utiliza diversos argumentos para justificar o estudo profundo de uma tecnologia ou outra.

Mas minha resposta é a mesma: pode estudar ou se aprofundar, mas não vire fã ou fique focado somente em uma tecnologia ou framework. O aluno, ou profissional, precisa focar em conceitos que são base, pois tecnologia de uma hora para outra é substituída ou acaba.

Eu mesmo já utilizei inúmeros frameworks, que atualmente nem existem mais. Mas os conceitos de Java, orientação a objetos e desenvolvimento ficam. Então, prezado leitor, estude vários frameworks, mas foque no conceitual, na base de tudo.

Vamos para os exemplos:

Estude java, orientação a objetos, classes, objetos, sobrecarga, dentre outros conceitos que são base. Estude também React Native, um framework bem utilizado atualmente. Mas não foque somente nele ou fique preso a ele, pois não temos certeza que vai durar por mais de uma década.

um abraço.

sexta-feira, 22 de março de 2019

Você sabe o que é DevOps?

Então, prezado leitor, você sabe o que é DevOps? Já ouviu falar neste termo?

DevOps pode ser considerada uma metodologia de desenvolvimento de software, que visa integrar os desenvolvedores (Dev) com os profissionais de infraestrutura de TI (Operações).

Este é o novo perfil esperado pela empresas. Unir profissionais e áreas. Quem trabalha na área de TI sabe que isto é um desafio. Atualmente, há um distanciamento entre os analistas de suporte, de desenvolvimento e de banco de dados.

Para perceber isso no dia a dia do seu trabalho, basta lembrar de um bug no sistema. Quando ocorre um bug de quem é a "culpa"?  Na verdade, como costumo dizer para os meus alunos: qualquer erro ou problema na área de TI deveria ser resolvido em conjunto. Cada vez mais falo para os meus alunos que o usuário final enxerga uma TI somente. Para o usuário é transparente quem desenvolve ou quem implanta sistemas. Vamos refletir e modernizar as relações na área de TI.

Recomento a leitura de: https://gaea.com.br/o-que-e-devops-conceito/

quarta-feira, 27 de fevereiro de 2019

Você sabe o que é Banco de Dados Geográfico?

Um BDGeo é um tipo especial de Banco de Dados, que suporta manipulação de dados geográficos, isto é, dados que possuem uma coordenada associada.

Na verdade, os bancos de dados tradicionais possuem extensões espaciais. Por exemplo: o PostgreSQL possui a extensão PostGIS. O oracle possui a extensão Spatial. E o que estas extensões trazem? Elas implementam funções específicas para manipulação de dados geográficos ou espaciais.

São exemplos de funções: contém, está contido, cruza, corta, dentre outras.