Ir para o conteúdo
Mostrar cesto Esconder cesto
Tela cheia

Blog

12 de Janeiro de 2009, 22:00 , por Desconhecido - | Ninguém está seguindo este artigo ainda.

Qual linguagem de programação usar para aprender algoritmos e programação orientada a objetos?

2 de Dezembro de 2017, 13:47, por Caio - 0sem comentários ainda

Tenho me debruçado sobre os desafios do processo de aprendizagem de linguagem de programação à cerca de alguns meses, quando estive como professor desse temática na Universidade Federal do Sul da Bahia. Durante as vivências que desenvolvi com estudantes no período, ficou evidente que o uso da linguagem C era repleto desafios, como: detalhes sobre alocação de memória, tipificação de dado estática com diversos tipos númericos (int, float, double, long) alem de suas variações de tamanho (long e short) e, por fim, mas não menos complexo, a sintaxe C, que não é tão intuítiva. Apesar dos detalhes de baixo nível que a linguagem C necessita serem essenciais para um conhecimento aprofundado do tema, tornam-se barreiras estruturantes para estudantes que estão iniciando seus estudos sobre essa temática.

Em virtude desses desafios tenho pensado em usar outras abordagens. Nessa busca, observo que linguagem Python pode apresentar alguns caminhos! Alguns motivos me apoiam nessa decisão são: a linguagem de programação possui uma comunidade ativia de solicita; abordagem simples e efetiva para a programação orientada a objetos; sintaxe elegante e tipagem dinâmica; ideal para o desenvolvimento rápido de aplicações em diversas áreas.

O objetivo dessa escolha por Python deve-se ainda a sua caracteristica multiparadigma, que permite iniciar com conceitos básicos da programação estruturada (sequência, decisão e repetição), úteis para escrita de algoritmos, e depois abordar os fundamentos da programação orientada a objetos, afim de utilizar suas vantagens: baixo acoplamento e alto reuso. Essa decisão assume que nenhum paradigma é capaz de resolver todos os problemas da maneira mais elegante ou eficiente.

Poderia ter optado por outras linguagens como  C++ ou Ruby, mas observando as tendências do desenvolvimento de software, escolhi Python. De acordo com o blog CodeEval, em sua pesquisa "as mais populares linguagens de programação", que analisa mais de 600 mil testes de codificação enviado por mais de 2 mil empresas, Python é a linguagem mais utilizada pelo 5º ano seguido.

 

 

Sugiro que aquelas e aqueles que estiverem começando a aventurar-se pelo incrível mundo da programação, dediquem algum tempo para aprender essa linguagem. Para ajudá-los segue alguns links que organizei recentemente:

 

Instalando Python no Windows (link) e no Linux (link)

Lista de IDE para programar em Python? (link) e quais as mais usada (link)

Qpython 3 IDE para usar Python no Android (link)

Versão comunitária do Pycharm (link)

Tutorial Python (link)

Mini-curso introdutório de Python desenvolvido pela Code Academy – em português (link)

Aprendendo a Programar com Python - Luis Felipe de Araujo Zeni – em português (link)

Curso introdutório de Python desenvolvido pela Google para seus funcionários - em inglês (link)



Sistema de Numeração Binários e Computadores Digitais

2 de Dezembro de 2017, 12:16, por Caio - 0sem comentários ainda

No início do desenvolvimento dos primeiros computadores, quando estes ainda eram apenas máquinas capazes de realizar vários cálculos e de armazenar os resultados em alguns poucos meios físicos (cartão perfurado), era utilizado o sisema de números decimais. Naquela época, 1940-1960, toda a passagem de informações entre as partes do computador (valvulas e transistores) era feita eletrônicamente, por cargas eletríca, sendo necessário medições constantes para verificar que valor estava sendo transmitido. O problema de trabalhar com decimais é que cada algarismo armazenado possui 10 estados possíveis, representando os números de 0 a 9, o que torna a quantidade de erros muito frequentes. Bastava que uma válvula estivesse fora da temperatura ideal para que os resultados das operações começassem a sair errado. Von Neumann recomendou em sua arquitetura que os dados e instruções fossem agora armazenados em binário, facilitando a análise dos mesmos e reduzindo a quantidade de erros. (1)

 

O que mudou com o sistema bińario?

Antes de aprofundar esse tópico, é preciso entender o que um sistema de numerações representa. (Pesquise sobre o assunto um pouco e retorne aqui)....por exemplo o sistema de números romanos é diferente do binário, mas ambos tem o mesmo objetivo.

Agora que você já conhece alguns sistemas de númeração, com o sistema binário, as informações analógicas como a medida de calor de uma válvula que a variação superficial era representada pelas casas decimais (19,2ºC, 19,21ºC, 19,22ºC,19,23ºC,19,24ºC...19,3ºC), tendo uma representação contínua, passa a representado de forma discreta, que pode considerar essas pequenas variações ou não, dependendo da necessidade de precisão.

 

O sinal analógico pode ser representado graficamente por uma curva, admitindo o sistema númeração decimal, que possibilita diversas combinações possíveis para cada momento da informação. Obseve as figuras (01 e 02) a baixo, que mostram uma curva, sendo possível observar que numa fração de tempo (uma ondulação) o valor muda entre o mínimo e o máximo de forma continua.

 

 

Figura 1: Exemplo de um esboço gráfico de um sinal analógico. 

Figura 2: Uma ondulação


 Já no caso de uma representação discreta, com sistema binário, apenas dois valores são possíveis, 0 ou 1, logo diminiu a chance de erro para interpretar que valor uma determinada variável assume em cada momento. 

 

 

 

Uma vez que as infomações tiveram sua base de representação modificadas o armazenamento e transmissão também mudou.

Costuma-se dizer, erroneamente, que a digitalização transformamos a informáção analógica em digital, quando na verdade a representação digital é uma nova representação, que não altera a análógica e, em falando de transmissão pode ser necessário enviar sinais digitais via meios analógicos, como o caso das rádio FM que usam um computador para tocar as músicas no estúdio, mas a antena de transmissão emite onda para os aparelhos da redondeza. (2)

Na maioria das situações, a ideia de digitalizar também está associada a comprimir, visto que ao representar um certo fenomeno através de números binários, informações discretas, ignora-se alguns valores, ou seja, reduz o "conteúdo" original.

 

Referências:

1 - http://producao.virtual.ufpb.br/books/edusantana/introducao-a-arquitetura-de-computadores-livro/livro/livro.chunked/ch01s08.html

2 - http://www2.ufba.br/~romildo/downloads/ifba/transmissao-digital-analogica.pdf

 



Cibercultura

4 de Setembro de 2014, 4:18, por Caio - 0sem comentários ainda


Nas décadas de 70 e 80 grande parte da população mundial começa a ter acesso aos equipamentos e dispositivos como walkman, vídeo-cassete, controle remoto, que, ao invadirem nossas casas, o local de trabalho, nosso cotidiano, proporcionaram o enraizamento de uma prática de disponibilidade. Santaella (2007) caracteriza esse período como um momento de transição entre a cultura de massas e a cibercultura, processo que a autora categoriza como cultura das mídias. Lemos e Levy (2011) não observam a transição da cultura de massas para a cibercultura como uma cultura distinta, para estes autores foi entre a decáda de 70 e 80 que se deu o início da cibercultura.

Tanto Santaella, como Lemos e Levy compreendem a cibercultura como o contemporaneo. Não estaria no futuro, no devir, mas nosso cotidiano, no hoje.  Em constante uso de tablets, smartphones, home banking, cartões inteligentes, celulares, palms, pages, voto eletrônico, imposto de renda via rede, entre outros dispositivos e artefatos que alteraram as formas sociais previamente existentes. A cibercultura é a forma sociocultural que emerge da sinergia entre a sociabilidade pós-moderna, a evolução da cultura técnica moderna, as tecnologias de base micro-informática e a convergencia das telecomunicações nas redes telemáticas mundiais. A cibercultra é a fotografia do complexo arranjo social que entrelaça informática, comunicação e cultura. (LEMOS, 2003) Juntamente com a cibercultura, emerge o paradigma informacional, cujo o fundamento é o “domínio cientifico da natureza não apenas para transformá-la material e energeticamente, mas para traduzi-la em dados binários, em informação”. (LEMOS; LEVY, 2011, p.22) 

Lemos e Levy observam três princípios na cibercultura. O primeiro, a liberação da palavra, “que se dá com o surgimento de funções comunicativas pós-massivas que permitem a qualquer pessoa...consumir, produzir e distribuir informação”. (LEMOS; LEVY, 2011, p. 25) A conexão e a conversação mundial, ou inteligência coletiva mundial, o segundo, “a circulação da palavra em redes abertas e mundiais criam uma interconexão planetária fomentando uma opinião pública ao mesmo tempo local e global”. (LEMOS; LEVY, 2011, p. 25) Por fim, a reconfiguração do sistema infocomunicacional, “aparecem dois sistemas em retroalimentação e conflito...o massivo e o pós-massivo”. (LEMOS; LEVY, 2011, p. 26)

Este arranjo tecnosocial está definitivamente nos envolvendo, alguns pesquisadores como Amber Case afirmam que estamos nós tornando uma versão de Homo sapiens olhadores de tela e clicadores de botão, e provoca: será que essas máquinas vão nos conectar ou nos conquistar no final das contas? Assita a palestra dela no TED Woman em 2010.

 __

LEMOS, André. Alguns pontos para compreender a nossa época. LEMOS, André; CUNHA, Paulo (Orgs). Olhares sobre a Cibercultura. Porto Alegre: Sulina, 2003, p. 11-23

LEMOS, André; LEVY, Pierre; O futuro da internet: Em direção a uma ciberdemocracia planetária. São Paulo: Paulus. 2010.

SANTAELLA, Lucia; Linguagens líquidas na era da mobilidade. São Paulo: Paulus, 2007.

Definição de Cibercultura na Wikipédia.



Onde estamos? Para onde caminhamos?

7 de Fevereiro de 2014, 13:53, por Caio - 0sem comentários ainda

 

Onde estamos?

Quanto a Internet se popularizou, ainda na década de 90, os criadores e usuários ainda a utilizavam como o paradigma massivo, como o televisão e rádio onde palavras como consumidor, receptor e espectador definiam um dos lados da comunicação, ao passo que os grandes portais, redes de noticias transmitiam as informações de forma estática e sem qualquer tipo de interação, caracterizando o outro lado da comunicação. Esta é a definição da comunicação massiva, uma relação de um (polo emissor) para muitos (polos receptores). Naquela época, para se comunicar os usuários da Internet, receptores da comunicação massiva, tinham que recorrer a um e-mail ou ainda utilizar o telefone, não havia possibilidade de contestar, discutir ou interagir em tempo real.

Com a mudança de paradigma, da comunicação massiva para a pós-massiva surgem novas necessidades. Uma serie de iteração levou os usuários a questionar esse paradigma centralizado de emissão e num rápido processo de desenvolvimento surge a segunda geração da WEB, focada em serviços online para “potencializar as formas de publicação, compartilhamento e organização de informações, além de ampliar os espaços para a interação entre os participantes do processo”. (PRIMO, 2007)

Segundo Tim O’Reilly, criador do termo:

Web 2.0 é o entendimento de que a rede (internet) é a plataforma. Sobre esta plataforma de rede as regras para negócios costumam ser diferentes e sua principal regra é: Usuários agregam valor! Entendendo como construir seus bancos de dados, eles ficam melhores quanto mais às pessoas o usam, é na verdade o segredo das origens de toda empresa 2.0“.

Apesar da visão comercial, é importante destacar a valorização da participação dos usuários, apostando no uso, na interação para melhorar os serviços. Emerge um modelo informacional, e de negócios diga-se de passagem, onde a conexão de micro-redes interconectadas, cooperando intensivamente garante a melhoria dos serviços e ações.

Cada vez mais o trabalho a distância se populariza. Eu mesmo faço parte de uma cooperativa de trabalho, EITA – Educação, Informação e Tecnologias para Autogestão (1), cujo as/os participantes estão localizados em estados diferentes (BA, RJ, RS, PE, MG, SP e PR), mas graças a ferramentas como pad (2), serviços de videoconferência, ferramentas de compartilhamento de arquivos e de gestão de projetos, podemos ter um ambiente de trabalho colaborativo sem residirmos nos mesmo local.

A Web 2.0 refere-se então a um conjunto de novas estratégias mercadológicas e a processos de comunicação mediados pelo computador, com repercussões sociais importantes, que potencializam processos de trabalho coletivo, de troca afetiva, de produção e circulação de informações de construção social de conhecimento apoiada pela informática.

Primo alerta, “Contudo, não se pode supor a auto-organização grupal como um processo mágico que faria sempre emergir a verdade a partir de vozes espontâneas, legítimas e interessadas na construção de algo que é de interesse de todos e para seu próprio bem.” há que se trabalhar em processos de gestão e construir relações de confiança entre os envolvidos, seja por meio de outras tecnologias ou por mediações entre os envolvidos.

Para onde caminhamos?

Através do uso ontologias e taxonomias, a Web está se transformando, permitindo uma conexão não somente de pessoas para pessoas ou pessoas para comutadores, mas entre computadores e computadores.

O conhecimento está sendo representado por definições, com anotações que atribuem significados de forma hierarquizada, o que permitiu o desenvolvimento de mecanismos de buscas semânticas, capazes de realizar inferências e análise em banco de dados, além de viabilizar o uso de agentes inteligentes para buscar informação na Web de forma muito mais rápida e efetiva.

O gargalo desta tecnologia é a criação de ontologias/taxonomias e a anotação prévia de tudo de forma estruturada, o que faz um processo complexo e demorado, dai sua baixa popularidade em cenários menos “acadêmicos”.

Vamos a um exemplo: se todos os jogos de futebol da Copa de 2014 fosse anotados com uma ontologia formalizada do futebol. Seria possível desenvolver mecanismos de busca para selecionar apenas os gols de cabeça de um jogador, e visualizar os trechos, 2s antes e 2s depois, destes gols.

Uma vez que pudêssemos realizar busca por contexto as ações de filtro seria facilitadas, evitando que conteúdo indesejado fosse encontrado. Cada camada, ou nível, de uma arquitetura de busca refinaria os resultados melhorando eficiência e eficacia para o nível subsequente.

 

--

 

1 - A EITA atua como parceira das lutas de movimentos sociais do
campo popular através da construção de tecnologias livres da informação e metodologias participativas para seu uso e apropriação. O portal da Economia Solidária – Cirandas.net, é um dos trabalhos que a cooperativa desenvolve.

2 -Um pad é um documento de texto aberto, não necessita de usuário ou senha para edição e visualização. Utilizamos uma versão do etherpad que está disponível para quem tiver interesse em - pad.eita.org.br/



Letramento Digital e Letramento na Inclusão Digital

7 de Fevereiro de 2014, 10:53, por Caio - 0sem comentários ainda

Inspirado pelo preambulo da tese de doutorado 'Entre a Fronteira e a Periferia: linguagem e letramento na inclusão digital' de Marcelo Buzato, tentarei falar o que entendo sobre letramento digital. Antes preciso esclarecer que o sub-título do trabalho à cima me auxilia em minha argumentação, uma vez que linguagem e letramento na inclusão digital me conduz a pensar processos que permita aos envolvidos usarem os signos, a escrita, os textos em dispositivos digitais (computadores, celulares, tablets) para se comunicarem.

A preposição na, ei espera ai! Eu me considero quase analfabeto, coisa que aquelas e aqueles que acompanham as postagens neste blogs já perceberam, e sinceramente espero que mais alguém além dos colegas da disciplina leia minhas incertezas, continuando... , dai antes de sair falando tenho que 'googlar' qual a função da preposição na numa sentença.

Foi no Yahoo Respostas (1) mas não achei o que precisava. Que nome adequado, mas dessa vez não deu. Usei então a Wikipédia, que “preposição é uma palavra invariável que liga dois elementos da oração”, assim temos que pensar no letramento na inclusão digital como algo diferente de letramento digital. Assim posso afirmar que letramento digital é outra coisa.

O que seria então letramento digital? Busquei o trabalho de Verônica Araújo e Raquel Glotz em titulado 'O Letramento digital enquanto instrumento de inclusão social e democratização do conhecimento: desafios atuais.' Ela trata de letramento como mecanismos de inclusão na Sociedade da Informação, mas não apenas ensinar o uso da informática, mas também melhorar as condições de vida a partir do uso dos computadores.

Penso alto: Sabemos que a questão do analfabetismo funcional representa um grande problema numa cultura que, desde à Grécia, vem usando signos para comunicar-se. Aprender as letras de fato é uma possibilidade de melhorar as condições de vida, isso seria alfabetização né? Sem ela não estaria aqui expressando o meu entendimento, ou falta de, sobre o assunto. Porém ainda assim não seu o que é letramento.

Letramento, segundo Soares (2002, p. 145), “o estado ou condição de quem exerce as práticas sociais de leitura e de escrita, de quem participa de eventos em que a escrita é parte integrante da interação entre pessoas e do processo de interpretação dessa interação.” A autora busca uma compreensão mais ampla do conceito letramento, que surge no contexto de uma cultura do papel, ao mesmo tempo que já vêm adquirindo novos contornos na medida que nos damos conta de como cibercultura muda nosso cotidiano. (SOARES, 2002, p 144).

Então, tensionando as ideias de Magda Soares, Verônica Araújo e Raquel Glotz (3), posso dizer que letramento é a a interpretação que pessoas fazem do processo de comunicação que integram, a partir de uma interação com outras pessoas ou consigo mesmo, numa busca por melhorar seu cotidiano. Então letramento é política!

Agora digital! Não sei bem, mas talvez Levy ajude, talvez não. Letramento digital é um conjunto de técnicas, práticas, atividades, formas de pensamento e valores que se desenvolvem juntamente com o crescimento do ciberespaço que possibilitam os indivíduos acessar, interagir, processar e desenvolver multiplicidade de competências na leitura e escrita das mais variadas mídias, através da mediação dos computadores ou outros dispositivos eletrônicos da tecnologia da informação e da comunicação. (LEVY, 1999, p.17).

Ele continua que é difícil o individuo emergir na cibercultura se não possui o domínio do código de escrita e leitura de seu próprio idioma. Acrescento que, até que existem processos automáticos e confiáveis de tradução, ainda vamos continuar precisando também do inglês, idioma universal de grande parte dos textos na Internet.

Levy contribui para pensar o letramento digital enquanto um processo de criticidade dos usos que fazemos das TICs, seja em prol de objetivos pessoais, enquanto membros ativos de uma sociedade mais tecnologizada, seja em cooperação com nossos pares.

Ainda assim não me sinto seguro, sei que letramento digital tem algo mais. Quando penso em leitura e escrita de mídias, cabe audio, foto, vídeo e código. Sim código fonte. Os softwares podem ser entendidos como um conjunto de abstrações, organização lógica de uma ideia, um projeto, um conhecimento, que usa de uma linguagem (signos e sintaxe). Um programador que conheça essa linguagem pode usar um suporte computacional para transformar sua ideia em uma algoritmo, que uma fez executável segue os passos lógicos para realização de um conhecimento.

Pode ser que o letramento digital perpasse pelas muitas possibilidades que a cultura digital oferece, como apropriação da linguagem de programação, não uso domínio, pois pode induzir a pensar que tenhamos que ser programadores, mas sim entender os desafios do percurso entre ideias, linguagem, linguagem de programação, binária e eletrônica.


1 - Um portal que as pessoas fazem perguntas dos mais variados tipos e recebem respostas diversas, que podem ser qualificadas, dizendo se serviu ou não para o que foi perguntado. No caso da preposição na – veja o link <<http://br.answers.yahoo.com/question/index?qid=20100816150828AArZY11>>

2 - Novas práticas de leitura e escrita: letramento na cibercultura' de Magda Soares, Educ. Soc., Campinas, vol. 23, n. 81, p. 143-160, dez. 2002

3 - Aproveito para compartilhar um link com uma bibliografia disponível on-line sobre letramento digital veja o link <<http://blog.midiaseducacao.com/2012/04/bibliografia-on-line-letramento-digital.html>>

4 - LÉVY, Pierre. As tecnologias da inteligência: o futuro do pensamento na era da informática. São Paulo. Editora 34. 2004