sexta-feira, 11 de dezembro de 2015

Apresentação

Olá tripulantes!
Segue a apresentação dos assuntos: Introdução a Lógica de Programação e Noções de Algoritmos.



quarta-feira, 9 de dezembro de 2015

Programação no Ensino fundamental


Olá pessoal! Dando continuidade a área da programação, destacaremos um tema que vem ganhando muita força, trata-se do processo de aprendizagem de algoritmos e lógica de programação nas unidades escolares. Um projeto bastante apreciativo e estimulante, tanto para as instituições, como para os alunos.

 


Esta tendência, como se pode imaginar, surgiu nos Estados Unidos, incentivada e patrocinada por grandes empresas de tecnologia e seus fundadores, entre as quais se destacam Microsoft e Facebook. Nos Estados Unidos, já há currículos e recursos desenvolvidos e destinados às diferentes idades, treinamento sendo oferecido aos professores e um eficiente trabalho de divulgação junto às autoridades educacionais e políticos. Tudo com o objetivo explícito de fomentar a incorporação da programação na vida diária dos escolares. Alguns países principalmente do leste europeu também aderiram a esta iniciativa. Na Estônia, cerca de 20 das 550 escolas foram escolhidas para participar do programa-piloto ProgeTiiger, parceria público-privada que tem como intuito “dar às crianças a oportunidade de criar” com tecnologia, algo com que elas já estão familiarizadas, segundo a idealizadora do projeto, Ave Lauringson. “Na Estônia, as crianças andam com fraldas e iPads”, disse Lauringson.


Como toda ideia ou projeto pode possuir seus prós e contras, a programação na escola originou alguns questionamentos, principalmente tratando-se do estudiosos das áreas sociais e psicológicas envolvendo a infância.
Com relação a isso, indicamos aqui, dois bons artigos, com várias opiniões de ambos os lados com relação ao tema:

  • Ciência hoje - Computação para pequenos
http://cienciahoje.uol.com.br/alo-professor/intervalo/2014/05/computacao-para-os-pequenos

  • Planeta sustentável - Escolas devem ensinar programação?
http://planetasustentavel.abril.com.br/noticia/educacao/escolas-devem-ensinar-codigo-de-programacao-802600.shtml

Brasil - Letramento em programação

O Instituto Ayrton Senna tem um projeto de desenvolver o letramento em programação nas escolas públicas brasileiras, trata-se do ensino de lógica de programação e introdução a algoritmos para realização de tarefas das múltiplas matérias lecionadas no colégio. O programa piloto começou em Itatiba, interior de São Paulo, com foco nos alunos do Ensino Fundamental II. Atualmente, o projeto está sendo desenvolvido em 6 escolas e impactando 90 alunos.





E por fim, aqui vai uma última indicação, trata-se do site Computação na escola, que possui várias informações, notícias e métodos de ensino da programação no ambiente escolar. segue aí!



sexta-feira, 6 de novembro de 2015

Computação Desplugada

Olá tripulantes!

Mais uma missão nos aguarda no universo da lógica de programação: obter os fundamentos da Ciência da Computação sem utilizar computadores.

A Computação Desplugada apresenta o Pensamento Computacional (que pudemos definir anteriormente como Lógica de Programação) através dos conceitos de números binários, compressão de dados e algoritmos de forma simples, com jogos e quebra-cabeças, usando lápis e cordas, ou o que estiver disponível. Esse conjunto de atividades tem sido utilizado no mundo todo há 20 anos para ensinar desde crianças no ensino fundamental até idosos.
Você pode fazer o download do livro Computer Science Unplugged em Portugês(Brasil) clicando aqui.
Segue um vídeo da experiência aqui no Brasil.


Até a próxima transmissão.

quarta-feira, 4 de novembro de 2015

ALGORITHM - The Hacker Movie

Olá tripulantes! sejam bem vindos! Continuando com o tema algoritmos, aqui vai uma indicação cinematográfica. Trata-se de "Algorithm - The hacker movie", produzido em 2014.

"Um hacker de computador freelance invade um sistema secreto do governo e faz o download de um programa. Ele deve escolher entre sua própria curiosidade e as vidas dos seus amigos."

Lembrando que esta versão do filme é legendada. Um bom filme a todos!



sexta-feira, 23 de outubro de 2015

Operações algorítmicas

Bem vindos a mais uma viagem recrutas! Dessa vez o destino são os operadores fundamentais para a construção de um algoritmo. Então vamos lá.

Operadores de um algoritmo

Esses operadores são de suma importância para muitas estruturas algorítmicas, principalmente, as estruturas base de programação como são as seletivas e de repetição.
Essas ferramentas se baseiam em tabelas chamadas de tabelas verdade, que mostram um resultado booleano (verdadeiro ou falso) de acordo com as comparações ou combinações. Os símbolos de comparações variam um pouco de linguagem para linguagem, porém as suas estruturas e suas lógicas seguem o mesmo padrão.

Aqui algumas as expressões mais comuns:

Expressões aritméticas

Utilizam-se de operadores que possuem como objetivo a execução de cálculos entre variáveis. Os operadores aritméticos com dados do tipo inteiro ou do tipo real. 



Expressões lógicas

As expressões lógicas sempre retornaram True (Verdadeiro) ou False (False). Para se montar expressões lógicas utilizamos operadores relacionais. A utilização das expressões lógicas somente serão aplicadas em termos com o mesmo tipo de dados.

Operadores relacionais

São usados para comparar duas expressões ou variáveis e retornar a comparação por verdadeira ou falsa (Valor lógico).


Operadores lógicos

Como o nome se refere, são utilizados para combinar expressões lógicas.



Fontes: Juliobattisti.com & Tiexpert.net 


 

quinta-feira, 22 de outubro de 2015

Estruturas de um algoritmo

Saudações tripulantes! Após a demonstração conceitual de um algoritmo, iremos tratar de demonstrar a forma de estruturação do mesmo, ou seja, o "esqueleto" de um algoritmo e as suas formas mais básicas de processamento de um comando ou função.


Basicamente, todo algoritmo possui um roteiro de execução padrão. Assim como um texto dissertativo, todo algoritmo é dividido em três partes, comparadas a introdução, desenvolvimento e conclusão de uma dissertação. São elas:

                                  

Entrada de dados: Que consiste na iniciação de variáveis e na definição de valores ou informações.
Processamento dos dados: Caracterizado pela manipulação dos mesmos, através de lógicas de programação e estruturas de comandos.
Saída de dados: Que resulta em qual a função de tal algoritmo, demonstrando o seu objetivo inicial.

Estruturas chave de um algoritmo


- Estrutura Seletiva

As estruturas seletivas são uma das bases de qualquer linguagem de programação que desempenha um papel importante num algoritmo. Essa estrutura é responsável pela tomada de decisão de um programa, deixando-o mais "inteligente". As estruturas seletivas se apoiam no conceito booleano, no qual apenas dois resultados são possíveis: Verdadeiro ou falso. Geralmente, descritos com os comandos "if " e "else" em muitas linguagens de programação.


- Estrutura de repetição

Juntamente com as estruturas seletivas, as estruturas de repetição ou iteração são de crucial importância para a programação de um algoritmo.
As estruturas de repetição ou iteração nos possibilitam executar o mesmo trecho do código várias vezes seguidas, enquanto um dado critério não é satisfeito.
Essas estruturas são, comumente, dadas pelos comandos "while" ou "for". Qualquer estrutura, seja for ou while, funciona com uma variável que chamamos de sentinela. Essa variável ira ditar quando o programa deverá sair de repetição e realizar a saída de dados.



Fontes: Adsticamoes.com & Devmedia.com



quarta-feira, 3 de junho de 2015

5Vs: A estrutura do Big Data

Usar o Big Data no seu negócio vai te garantir uma verdadeira revolução. Nessa afirmação é real quando você passa a entender como uma ferramenta desse tipo pode analisar montanhas de dados que são gerados na internet e transformar isso em informação valiosa para a sua empresa
Quer garantir o bom uso dessa tecnologia? Então vamos entender o conceito dos 5 Vs que representam o Big Data.


“Volume” sem fim
O primeiro V refere-se ao volume de dados gerados na internet. É inaceitável analisar todo esse montante de informações por sistemas que não são Big Data. Para comparação o volume de dados gerados até 2015 deve chegar a 7,9 Zettabytes, aproximadamente 8 Bilhões de HDs comuns. Cerca de 98% de todos os dados gerados no mundo são convertidos para uma versão digital. O Facebook, por exemplo, tem um trafego de 10 Bilhões de mensagens e 4,5 Bilhões de cliques no ‘curtir’.

“Variedade” de fontes
            Todo esse montante de dados são provieram de várias fontes diferentes, logo, todos os dados não estão estruturados em um banco de dados, ou seja, não há padrão claramente definido. Ai que entra o segundo V do Big Data. Em grande quantidade e sem formatação específica, fica fácil entender por que nem todos os dados gerados são aproveitáveis para uma empresa. A verdade é que os empresários usam pouco o recurso do Big Data. Apenas 5% do que é gerado na internet é analisado e convertido em ações eficazes para a empresa. O restante da informação, que poderia ser valiosa, acaba sendo inutilizada.

“Veracidade” dos dados
            O terceiro V do conceito está ligado a fidedignidade do conteúdo. Como mencionado acima, nem todos os dados do Big Data possuem valor para um negócio. Em meio a tanta informação é preciso destacar o que é rico em conteúdo e, ao garantir essa separação, o que sobra são conhecimentos importantes para compreender melhor o consumidor e o seu comportamento.

“Velocidade” sem igual
            O ímpar do big data em relação a outras soluções (Data Mining, Business Intelligence e CRM (Customer Relationship Management)) é o fato de retornar bilhões de dados confiáveis antes dos mesmos se tornarem ultrapassados devido a dinamicidade dos dados. Essa velocidade com que dados precisam ser gerados e transmitidos forma o quarto V. Em segundos, um vídeo ou texto pode se tornar viral e atingir milhares de internautas. Para exemplificar, basta acompanhar como o mercado financeiro faz análises do movimento de grandes empresas a partir de suas redes sociais e como, em pouquíssimo tempo, a avaliação dessa postura define a compra/venda de uma ação.

“Valor” da informação
                Para garantir que o trabalho dos outros Vs tragam retorno, é preciso gerar valor para os resultados que retornam do Big Data. Assim, aparece o último V do conceito. O uso do Big Data torna-se imprescindível quando todos os esforços são direcionados para gerar um valor, que é a informação passível de análise e a sua conversão em material para ser aplicado nas decisões de uma empresa.
A compreensão desses conceitos e da sua aplicação resulta em uma transformação no mundo dos negócios conhecido atualmente como uma economia inteligente e analítica. Conseguir aplicar os Vs no seu negócio vai permitir a maior eficiência na previsão de tendências do mercado, o conhecimento de atitudes para fidelizar clientes e a melhora dos processos internos para atingir o sucesso.

Finalizando
É claro que estes cinco aspectos não precisam ser tomados como a definição perfeita. Há quem acredite, por exemplo, que a combinação "volume + velocidade + variedade" seja suficiente para transmitir uma noção aceitável do Big Data. Sob esta óptica, os aspectos da veracidade e do valor seriam desnecessários, porque já estão implícitos no negócio - qualquer entidade séria sabe que precisa de dados consistentes; nenhuma entidade toma decisões e investe se não houver expectativa de retorno.
E você leitor? Qual a sua opinião?
                        

Fontes:

sábado, 16 de maio de 2015

Introdução a Algoritmos

Olá tripulantes, bem vindos! Bem, vamos embarcar em uma viagem na direção ao estudo e análise de algoritmos. Especificaremos este tema em algumas vertentes, como Noções de algoritmos, Projetos e Estrutura de dados. Como foi apresentado anteriormente, utilizaremos o Bitcoin como ferramenta de demonstração da estruturação de algoritmos. Mas isso ficará para as próximas viagens.
Antes de tudo, você sabe o que é um algoritmo?

Conceito de Algoritmo

Um algoritmo nada mais é do que uma receita que mostra passo a passo os procedimentos necessários para a resolução de uma tarefa. Ele não responde a pergunta “o que fazer?”, mas sim “como fazer”. Em termos mais técnicos, um algoritmo é uma sequência lógica, finita e definida de instruções que devem ser seguidas para resolver um problema ou executar uma tarefa.

Embora você não perceba, utiliza algoritmos de forma intuitiva e automática diariamente quando executa tarefas comuns. Como estas atividades são simples e dispensam ficar pensando nas instruções necessárias para fazê-las, o algoritmo presente nelas acaba passando despercebido.

 Algoritmo Computacional

O algoritmo computacional se estende dessa ideia. É um programa que realiza procedimentos para solucionar um problema.

A diferença está na forma que isso deve ser feito. Algoritmos computacionais usam estruturas que ajudam o processador a chegar a um determinado resultado. Ou seja, o programador tem que realmente expressar como chegar ao resultado passo-a-passo, pois não existe o óbvio para o computador.


Para isso, define-se que para criar um algoritmo (programa) é apenas necessário três estruturas:
  • Estrutura de procedimento
  • Estrutura seletiva
  • Estrutura repetitiva

E, para isso, podemos também usar alguns paradigmas dos dias atuais, como a programação orientada a eventos e a programação orientada a objetos.
           
Fontes: Tiexpert.com & Tecmundo.com

sexta-feira, 15 de maio de 2015

O que é Big Data?

Bem vindos a bordo tripulantes! Transmitirei a vocês um assunto muito interessante e tendencioso pra o futuro de médias e grandes empresas, o Big Data. Debateremos sobre o conceito e importância dessa nova definição em gestão de armazenamento de dados.

Imagine a quantidade de dados que são trafegados diariamente através da internet. Facebook, Google, Twitter, Instagram, operadoras de telefonia, bancos, companhias aéreas. Enfim, inúmeros são os exemplos de empresas que lidam diariamente com uma quantidade exorbitante de dados. Mas de nada adianta ter tantos dados se não saber geri-los de forma correta. É ai que o conceito de Big Data entra na jogada.

Atualmente o Big Data vem se tornando um nome comum no vocabulário de vários ambientes de TIC. Que tal compreendermos como isso contribui para o cotidiano de governos, empresas e demais instituições?


Conceito de Big Data

De maneira mais simplista, a ideia pode ser compreendida como a análise de grandes quantidades de dados para a geração de resultados importantes que, em volumes menores, dificilmente seriam alcançados.


Para ficar mais claro, trocamos milhões de e-mails por dia, milhares de transações bancárias são realizadas por segundo, vários sistemas de ERP’s coordenam setores de inúmeras companhias e soluções sofisticadas gerenciam estoque e cadeia de suprimentos de inúmeras fábricas.

E toda essa informação é poder, logo, se a empresa souber gerir com sabedoria esses dados certamente obterá sucesso com clientes, conseguirá ultrapassar empresas concorrentes, cortará gastos e evitará o desperdício de recursos essenciais. Se notarmos, essas são áreas decisivas para o futuro da companhia.

Mas só agora as instituições notaram a necessidade de fazer bom uso de seus bancos de dados? Não. Há tempos que departamentos de TI contemplam aplicações de Data Mining, Business Intelligence e CRM (Customer Relationship Management), por exemplo, para tratar justamente de análise de dados, tomadas de decisões e outros aspectos relacionados ao negócio.


Mas por que Big Data é tão importante?

         Lidamos com dados desde a idade da pedra. Acontece que nos tempos atuais, com o avanço da computação conseguimos guardar, organizar e analisar dados com facilidade e frequências muito maiores. E essa tendência está longe de entrar em decaimento. Basta imaginar que daqui a alguns anos praticamente todos os dispositivos eletroeletrônicos terão conexão com a internet.

Mas onde o Big Data se encaixa nisso?  A quantidade de dados vem se tornando exponencialmente maior e haverá um momento em que as empresas terão que saber lidar com esse “Boom” de informações. O Big Data se propõe a ajudar nesta tarefa, uma vez que as ferramentas computacionais usadas até então para gestão de dados, por si só, já não podem fazê-lo satisfatoriamente.


Finalizando

Não podemos considerar as soluções de Big Data como um arsenal computacional perfeito: sistemas do tipo são complexos, ainda desconhecidos por muitos gestores e profissionais de TI e a sua própria definição ainda é passível de discussão.

O fato é que a ideia de Big Data reflete um cenário real: há, cada vez mais, volumes de dados gigantescos e que, portanto, exigem uma abordagem capaz de aproveitá-los ao máximo. Apenas para dar uma noção deste desafio, a IBM divulgou no final de 2012 que, de acordo com as suas estimativas, 90% dos dados disponíveis no mundo foram gerados apenas nos dois anos anteriores. Até o final de 2015, este volume todo terá aumentado pelo menos duas vezes. Diante deste ponto de vista, é um tanto precipitado encarar a expressão "Big Data" como uma mero "termo da moda".

No próximo tópico relacionado ao assunto debateremos sobre os “Vs” do Big Data e as soluções atualmente implementadas no mesmo. Vejo vocês em breve tripulantes!


Fonte: http://www.infowester.com/big-data.php

 


Introdução a Lógica de Programação

"Capitão, traçando rota para Lógica de Programação..."

Definindo "Lógica"

Quando usamos o termo 'lógica', geralmente estamos nos referindo a algo coerente, racional.
Podemos dizer que a lógica é a 'correção do pensamento', uma vez que uma de suas preocupações é determinar quais operações são válidas e quais não são, fazendo análise das formas e leis do pensamento.
Sendo o raciocínio a forma mais complexa do pensamento, podemos dizer então que a lógica estuda a 'correção do raciocínio'. Ainda podemos dizer que a lógica tem em vista a 'ordem da razão'. Isso dá a entender que a razão pode funcionar desordenadamente. Daí concluímos que a lógica estuda e ensina a colocar 'ordem no pensamento'.
Então, enquanto falamos, escrevemos ou tomamos atitudes, estamos expressando nossos pensamentos. Se quisermos ser bem sucedidos precisamos colocar ordem no pensamento, ou seja, utilizar a lógica.

Lógica de Programação 

Significa  o uso correto das leis do pensamento, da 'ordem da razão' e de processo de raciocínio e simbolização formais na programação de computadores, objetivando a racionalidade e o desenvolvimento de técnicas que cooperem para a produção de soluções logicamente válidas e coerentes, que resolvam com qualidade os problemas que se deseja programar.
O raciocínio é algo abstrato, intangível. Os seres humanos têm a capacidade de expressá-lo através da palavra falada e escrita, que por sua vez se baseia em um determinado idioma, que segue uma série de padrões (gramática). Um mesmo raciocínio pode ser expresso em qualquer um dos inúmeros idiomas existentes, mas continuará representando o mesmo raciocínio, usando apenas uma outra convenção.
Algo similar ocorre com a Lógica de Programação, que pode ser concebida pela mente treinada e pode ser representada em qualquer uma das inúmeras linguagens de programação existentes. Essas, por sua vez, são muito atreladas a uma grande diversidade de detalhes computacionais, que pouco têm a ver com o raciocínio original. Para escapar dessa torre de Babel e, ao mesmo tempo, representar mais fielmente o raciocínio da Lógica de Programação, utilizamos os Algoritmos.

Falaremos sobre Algoritmos mais adiante.

Até a próxima transmissão....



Fonte: Forbellone, André Luiz Villar. Lógica de Programação: A construção de algoritmos e estruturas de dados. 3ª ed - São Paulo, 2005.

terça-feira, 12 de maio de 2015

Um primeiro contato.

Olá Internêts! 

Sejam todos bem-vindos à essa nave iniciativa de compartilhamento coletivo de informações sobre o espaço mundo tecnológico! Este EduBlog tem como principal objetivo o de iniciar (para os recrutas que ainda não conhecem) ou refinar (para os que já estão no caminho) suas técnicas sobre Lógica de Programação, Algoritmos e Big Data.  
Durante a nossa enterprise, sobre o tripé já supracitado, utilizaremos várias tecnologias atuais em estudos de caso. Está curioso para descobrir quais casos nós da Code of Honor escolhemos? Calma! Primeiro, vamos conhecer um pouco mais sobre o nosso primeiro tópico: Logica de Programação.
Portanto... O que estão esperando recrutas? Subam nesta nave e comecem exercitar! Os vejo na nossa próxima transmissão... 
Desligando...