Vídeo explicando amplamente o Big Data com as mais diversas funções que ele pode servir, com um teor mais técnico.
-
BIG DATA
O QUE É BIG DATA?
-
PROGRAMAÇÃO
INTRODUÇÃO A PROGRAMAÇÃO!
-
ANALISAR DADOS?
UMA BREVE INTRODUÇÃO A ANÁLISE DE DADOS.
-
PARA QUE LÓGICA NA PROGRAMAÇÃO?
CONCEITOS DE LÓGICA NA PROGRAMAÇÃO.
-
PROJETOS DE ALGORITMOS
PORQUE ESTRUTURAR BEM UM ALGORITMO?
Vídeo Big Data - Funcionamento do Data Analysis
Data Analysis - Big Data
A análise de dados é uma das partes mais importes de todo o comercio na atualidade, desde os primórdios dos negócios no mundo, sempre houve uma pergunta que nunca terminava: Como obter e analisar esses dados?
O Data Analysis é um processo que utiliza um ferramenta extremamente importante, Data Mining, para obter um grande sucesso na análise e ele é definido da seguinte forma, possuindo uma ou mais características seguintes:
Definindo Objetivos: Toda base desde um pequeno negócio até uma grande empresa começa definindo objetivos e se baseando nessas decisões até o projeto final.
Levantando Perguntas: Com o tempo são criadas perguntas que precisam de respostas baseadas em algo. Exemplo de se perguntar motos azuis ultrapassam a velocidade com mais frequência que outros?
Coleta de Dados: As perguntas precisam de respostam então são coletados dados de fontes confiáveis, como por exemplo o relatório do Departamento de Trânsito (DETRAN) sobre as motos que ultrapassam a velocidade do radar e qual as cores delas.
Dados Wrangling: São dados brutos que foram modelados e filtrados pelo analista de dados para fornecer apenas informações úteis para um fim adequado.
Análise de Dados: Aglomeração de dados onde é possível enxergar e caracterizar algo devida a enorme quantidade de vezes que ocorre, criando padrões e dados estatísticos.
Conclusão: Última etapa em que após a análise, são extraídos dados e criado um relatório final para os usuários. Após esses passos, será introduzido o Data Mining.
Fonte: https://www.makeuseof.com/tag/what-is-data-analysis/
O Data Analysis é um processo que utiliza um ferramenta extremamente importante, Data Mining, para obter um grande sucesso na análise e ele é definido da seguinte forma, possuindo uma ou mais características seguintes:
Definindo Objetivos: Toda base desde um pequeno negócio até uma grande empresa começa definindo objetivos e se baseando nessas decisões até o projeto final.
Levantando Perguntas: Com o tempo são criadas perguntas que precisam de respostas baseadas em algo. Exemplo de se perguntar motos azuis ultrapassam a velocidade com mais frequência que outros?
Coleta de Dados: As perguntas precisam de respostam então são coletados dados de fontes confiáveis, como por exemplo o relatório do Departamento de Trânsito (DETRAN) sobre as motos que ultrapassam a velocidade do radar e qual as cores delas.
Dados Wrangling: São dados brutos que foram modelados e filtrados pelo analista de dados para fornecer apenas informações úteis para um fim adequado.
Análise de Dados: Aglomeração de dados onde é possível enxergar e caracterizar algo devida a enorme quantidade de vezes que ocorre, criando padrões e dados estatísticos.
Conclusão: Última etapa em que após a análise, são extraídos dados e criado um relatório final para os usuários. Após esses passos, será introduzido o Data Mining.
Fonte: https://www.makeuseof.com/tag/what-is-data-analysis/
O "Pai da Computação" e a conceituação de algoritmos.
Alan Turing (1912 - 1954), o famoso
cientista conhecido por ser considerado o pai da computação foi quem estabeleceu
o conceito de algoritmos que utilizamos hoje e foi um dos grandes
impulsionadores de novas tecnologias, as quais são melhoradas até hoje.
Alan Turing em 1927. |
A máquina de Turing é capaz de analisar símbolos trabalhando com 0,1 e o
conjunto vazio, que é como a computação atual funciona. Alan Turing junto com
um grupo de pesquisadores contratados pelo serviço secreto britânico durante a
segunda guerra foi capaz de produzir uma máquina a qual, através de uma leitura
rápida e constante de códigos pode desvendar as falhas na encriptação alemã chamada
"Enigma" ajudando a solucionar conflitos através da interceptação de
mensagens entre soldados.
A máquina de Turing. |
Noções e Projetos de Algoritmos - Slides
Apresentação em slides feita por João Carlos Barboza Alves dos Santos e complementada para ser postada aqui:
Fontes:
https://itmidia.com/especialistas-discutem-papel-de-algoritmos-para-internet-democratica/
https://www.oficinadanet.com.br/post/12834-os-10-algoritmos-que-dominam-o-nosso-mundo
https://www.tecmundo.com.br/tecnologia/56148-forca-invisivel-7-tipos-algoritmos-dominam-nosso-mundo.htm
https://canaltech.com.br/espionagem/O-que-e-a-NSA/
https://www.conversion.com.br/blog/como-funciona-o-algoritmo-do-google/
http://www.ic.unicamp.br/~lee/mc448/introducao-4up.pdf
Ada Lovelace e o primeiro algorítmo da história
Ada Lovelace, Charles Babbage e a Máquina Analítica. |
Nascida em 10 de dezembro de 1815, em
Londres, filha de Baronesa Baron e do romantista Lord Byron, Augusta Ada
King-Noel, escritora e matemática conhecida como Ada Lovelace, é responsável
pelo primeiro algoritmo a ser processado pela máquina sendo a primeira pessoa a
escrever em uma linguagem de programação.
Ada Lovelace e o artigo sobre a Máquina Analítica. |
Trabalhando junto com o cientista Charles Babbage, responsável
pela Máquina Analítica a qual era uma versão mais complexas de outros aparatos
como a Máquina Diferencial, cujo propósito era a realização de contas
matemáticas, Ada percebeu o potencial do aparelho e após ser recomendada para
traduzir o artigo de Babbage sobre a máquina ao acrescentar notas que o próprio
cientista deixou de perceber, Ada Lovelace criou o que seria o primeiro
documento com um algoritmo na história, o qual previa a capacidade que um dia o
mecanismo teria, sendo que só 100 anos depois foi confirmado como autêntico e
verídico suas pesquisas.
Máquina Analítica de Babbage. |
Fontes:
Programação nas Escolas
Exemplo de Programação nas Escolas
Visto alguns benefícios do ensino da lógica de programação na postagem anterior que você pode acessar clicando aqui Programação Cedo.
Nesse post mostro na prática algumas crianças no ambiente de estudo.
Por que ensinar Lógica de Programação para as crianças?
Por que ensinar Lógica de Programação para as crianças?
Muitas escolas do Brasil e do mundo já adotam aulas de programação para crianças e adolescentes entre 7 e 17 anos, a maioria dessas escolas colhem um resultado muito significativo, e por isso, vou mostrar o motivo desse ensino funcionar. Confira alguns benefícios abaixo.1. Promover um relacionamento mais inteligente das crianças com a tecnologia
Parece que crianças já nascem sabendo mexer no smartphone. E, de fato, começam a dominar tais ferramentas mais cedo do que se imagina. Mas, a verdade é que, muitas vezes, usam este conhecimento para comunicação e diversão. E param por aí. Por que, então, não transformar esta afinidade natural com a tecnologia em profissão? “Engana-se quem pensa que a programação é útil somente para quem quer fazer Ciência da Computação ou Engenharia. Hoje, e isso será crescente no decorrer dos anos, todas as profissões terão seus processos transformados. Advogados, contadores, porteiros, todos terão seus processos transformados diante da 4ª Revolução Industrial, e dominar conceitos de programação será indispensável”, diz Mohamed Elhabiby.2. Os alunos aprendem, brincando, a programar com a linguagem JavaScript e Python
Lembra do Super Mario World? RoboGarden é bem semelhante a ele, inclusive os “mundos” que dão nome ao jogo de videogame e aparecem na tela da TV. Só que ele é jogado no computador e, enquanto cumpre as missões, o aluno aprende conceitos de programação e, para passar de fase, precisa desenvolver seus próprios códigos e aplicá-los a cenários matemáticos e de ciência. Ele nem percebe, mas, jogando, está aprendendo a programar. “O modelo de repetição de fórmulas matemáticas está ultrapassado e não desperta o interesse do aluno, que decora aquilo só porque vai cair na prova, mas não assimila, de fato, o conteúdo. A RoboGarden, por outro lado, estimula a criatividade e que o aluno pense em soluções para contribuir com a sociedade”, opina o professor doutor Amaury de Castro Junior, da Faculdade de Computação da UFMS (Universidade Federal de Mato Grosso do Sul). A plataforma ensina o aluno a usar as linguagens JavaScript e Phyton, que são utilizadas na grande maioria dos computadores e softwares desenvolvidos em empresas do mundo todo, como a Microsoft.3. Matemática deixa de ser um bicho de sete cabeças
Para crianças que não têm afinidade com a área de exatas, um dever de casa de matemática pode ser um martírio. Já para quem não gosta de português, as regras de acentuação e separar as sílabas confundem a cabeça. Mas a linguagem de programação que o aluno trabalha ao navegar pela RoboGarden torna a assimilação destas disciplinas muito mais simples pelo aluno. “Trata-se de uma plataforma interdisciplinar e que será utilizada pelos alunos em todas as disciplinas da grade curricular das escolas do SESI de Mato Grosso do Sul, da Matemática à Educação Física”, explica a pedagoga e mestre em educação Simone Cruz, que é gerente de educação do Sistema FIEMS, do qual o SESI faz parte.fonte: https://noticias.portaldaindustria.com.br/listas/8-razoes-para-ensinar-programacao-a-criancas-e-adolescentes/
Os 3 melhores livros sobre Lógica de Programação !!
Os 3 melhores livros sobre Lógica de Programação !!
1- Livro: Lógica de Programação – Conhecendo Algoritmos e Criando Programas
Esse livro aborda a aplicação de diversos conceitos matemáticos na construção da lógica de programação, bem como os algoritmos, linguagens, diagramas, simbologias, e diversos outros aspectos essenciais para uma programação de qualidade. Exemplos são bem abundantes no livro, com exercícios para ajudar na fixação dos tópicos estudados.2- Livro: Introdução à Programação – 500 Algoritmos Resolvidos.
Focando mais na prática dos algoritmos do que na apresentação de teorias ou conceitos, esse livro é um ótimo companheiro para ajudar os programadores iniciantes a intermediários a aperfeiçoarem seus algoritmos sem dificuldade, de forma bem prática e mãos à massa.3- Livro: Lógica de Programação, de Paulo Silveira e Adriano Almeida
Apenas um dos diversos excelentes títulos da Casa do Código, usa as linguagens de programação HTML e JavaScript para passar alguns dos conceitos mais importantes na programação. O livro é bem instrutivo, e usa de muitos exemplos visuais para auxiliar o programador na tarefa de criar códigos eficientes para uso em programas e sites.Fonte: https://www.palpitedigital.com/melhores-livros-logica-programacao/
O poder dos dados
" A quem pertence o poder dos dados ", vídeo abordado por José Borbolla Neto (Professor na área de ciência de dados e pesquisador sobre relações entre tecnologia e ciências humanas. Fundador da Branded Brain, consultoria de business analytics, ciência de dados e transformação digital. Sem mais enrolação, agora fiquem com o vídeo:
Algoritmos de Ordenação - O que é?
Algoritmo de Ordenação
Em ciência da computação diz-se que é um algoritmo que coloca os elementos de uma dada sequência em uma certa ordem, podendo ser uma ordenação completa ou parcial. As ordens mais usadas são a numérica e a lexicográfica.
Existem vários motivos para se querer ordenar uma sequência. Uma delas é a possibilidade de acessar os seus dados de modo mais rápido e eficiente.
Existem alguns métodos bem simples de ordenação, como: Insertion, Selection, Bubble, Comb.
Insertion |
Selection |
Bubble |
Comb |
O uso de cada algoritmo vai depender da estrutura de dados utilizada, dos tipos de dados, e do tipo de ordenação desejada.
Conceito rápido:
Explicação completa:
Implementação em código:
Página do Departamento de Matemática da USP:
Algoritmos de Ordenação - QuickSort
O que é?
É um método de ordenação muito rápido e eficiente, inventado por C.A.R. Hoare em 1960. Naquela época, Hoare ainda era estudante e trabalhou em um projeto de tradução de máquina para o National Physical Laboratory. Ele criou o quicksort ao tentar traduzir um dicionário de inglês para russo, ordenando as palavras, tendo como objetivo reduzir o problema original em subproblemas que possam ser resolvidos mais fácil e rápido. Após alguns refinamentos, o método foi publicado em 1962.
O quicksort adota a estratégia de divisão e conquista. A mesma
consiste em rearranjar os valores de modo que as "menores" fiquem atrás das "maiores". Em seguida o quicksort ordena as duas sublistas de chaves menores e maiores recursivamente até que a lista completa se encontre ordenada. Os passos são:
- Escolher um elemento da lista, denominado pivô;
- Rearranjar a lista de forma que todos os elementos anteriores ao pivô sejam menores que ele, e todos os elementos posteriores ao pivô sejam maiores que ele. Ao fim do processo o pivô estará em sua posição final e haverá duas sub listas não ordenadas. Essa operação é denominada partição;
- Ordenar recursivamente a sub lista dos elementos menores e a sub lista dos elementos maiores;
O caso base da recursão são as listas de tamanho zero ou um, que estão sempre ordenadas. O processo não é infinito, pois a cada iteração pelo menos um elemento é posto em sua posição final e não será mais manipulado na iteração seguinte.
A escolha do pivô e os passos de partição podem ser feitos de diferentes formas e a escolha de uma implementação específica afeta fortemente a performance do algoritmo.
Aqui um vídeo em inglês que explica o conceito em dois minutos:
https://www.youtube.com/watch?v=HDQd6_0TJIE
Uma implementação em C:
http://www.programasprontos.com/algoritmos-de-ordenacao/algortimo-quick-sort/
Uma explicação teórica do Departamento de Matemática da USP:
https://www.ime.usp.br/~pf/algoritmos/aulas/quick.html
Explicação rápida do conceito:
https://pt.wikipedia.org/wiki/Quicksort