quinta-feira, 24 de novembro de 2011

Ciência da Computação


Apesar da popularização da informática e da internet, ainda é muito comum as pessoas desconhecerem o que faz e o que estuda um Cientista da Computação, inclusive entre os vestibulandos que almejam este curso, há muitos que não tem noção do que irão aprender e quais são as perspectivas para quando estiverem formados.

Pensando nisso resolvi escrever esse post usando um pouco da minha própria experiência como exemplo.

Eu sou formado em Direito e mesmo tendo a oportunidade de seguir carreira nessa área tão procurada, preferi dar um imenso passo atrás, prestar vestibular novamente e cursar Ciência da Computação, que sempre fora uma paixão e que sempre me despertou curiosidade e entusiasmo.

Logo no primeiro período eu e meus colegas fizemos algumas descobertas sobre o curso:

  • Diferente do que muitos pensam, Cientistas da Computação não aprendem a consertar computadores.
  • Durante o curso, em especial no começo, poucas serão as disciplinas nas quais se usa um computador.
  • Cálculo é extremamente importante(e difícil), portanto é bom estar preparado e motivado.
  • Não se aprende a mexer em programas como editores de texto, planilhas etc.
  • Assim como todo curso acadêmico, temos matérias que fogem um pouco ao foco principal do curso, como Metodologia Científica, Inglês Instrumental etc.

Esses, dentre outros equívocos, foram responsáveis pela evasão de aproximadamente 20% da minha turma, logo no primeiro período.

O curso possui três habilitações:
  • Programação
  • Análise e Desenvolvimento de Sistemas
  • Bancos de Dados

O primeiro contato com a programação também é grande motivo de evasão e de reprovação nos primeiros períodos. A programação é tanto uma ciência quanto uma arte, e como tal pode produzir resultados ótimos e apreciáveis ou rabiscos incompreensíveis e inúteis.

Para ser um bom programador, é necessário um bom raciocínio lógico, visto que se terá que administrar muitos fatores para que o programa funcione e execute aquelas tarefas a que se propõe.

Assim como em qualquer área de atuação, na programação é necessária muita dedicação, pois como diz o jargão, "só se aprende a programar programando". Some-se a isso o fato de que existem linguagens de programação que diferem bastante umas das outras, tanto em termos de ferramentas, quanto em termos de uso. Por isso o programador precisa escolher o caminho que mais se enquadre em seu perfil e se dedicar, pois essa experiência que ele acumula durante e após o curso é que vai determinar o sucesso dele na área.

Mas nem tudo é programação, os Analistas de Sistemas, que em muito se assemelham aos Administradores de Empresas, são aqueles que não necessariamente são experts em programação ou bancos de dados, porém têm grandes habilidades organizacionais e conseguem gerir recursos e pessoas com o fim de criar e manter sistemas. Nesse sentido se destacam os Gerentes de Projetos, que em muitas empresas chegam a ocupar cargos que costumavam ser exclusivos de Administradores.

Não nos esqueçamos da área de Bancos de Dados. O que seria das empresas e dos usuários se não fosse essa poderosa ferramenta. Pensem em como era gerir uma multinacional quando toda a informação era guardada em papel. O profissional em Bancos de Dados, não só tem que garantir o "estoque" de informações, como tem que cuidar para que estas informações estejam disponíveis da forma menos dispendiosa e ao mesmo tempo da forma mais segura possível.

Além dessas, existem muitas mais especialidades que ainda estou começando a conhecer mas que parecem bastante interessantes, como Redes, Inteligência Artificial.

sexta-feira, 11 de novembro de 2011

Resolução de exercício em "C"

Como me foi pedido, aí vai a minha resposta da 3ª questão da lista passada pelo professor Rosemberg.

"Fazer um programa que solicita um número decimal e imprime o correspondente em hexa e octal."

Obs.: Qualquer problema no link, é só reportar via comentário.

quinta-feira, 3 de novembro de 2011

Pelo Direito de não ter Religião

O ser humano, desde sua origem, ao observar a natureza, acabou por elaborar diversos silogismos que deram origem a superstições. Estas, como parte da cultura, foram sendo passadas através das gerações até que fosse esquecido o motivo pelo qual começaram.

Este mesmo homem, assim que se tornou sedentário, começou a sistematizar as suas superstições em complexos sistemas mágico-religiosos.

Entidade Pagã Baphomet, demonizada pela igreja Católica e suas sucessoras.


Atualmente a religião não só é parte inerente à maioria das culturas, como influencia amplamente as demais áreas, em especial a política.

Papa João Paulo II, ensinando a George W. Bush (o filho) o que faz um Chefe de Estado.

Assim como o Direito, o costume também tem suas formas de coerção e é aí que reide um grande problema. Devido ao fluxo cada vez maior de pessoas e informações acaba-se formando pequenos núcleos culturais que podem ter desde leves diferenças em relação à cultura da "maioria" até ser completamente diferentes. Infelizmente essa "maioria" dificilmente é tolerante em relação às "minorias" que nela encontram-se imersas. Daí surgem os preconceitos que eventualmente culminam em atos de violência física ou moral.

Se ele disse que não, é não! Quem manda na sua cabeça é ele!

Mesmo com o avanço da Ciência existem pessoas que insistem em delegar o seu pensar a uma instituição que pouco ou nada avançou no último milênio, e com isso acabam se voltando contra aqueles cujo maior erro foi cultivar um ideal de perseguição da verdade. Eu sou ateu, e digo que minha maior crença é na humanidade e em suas capacidades, não sou contra quem tem uma religião, mas exijo que me tratem com o mesmo respeito.

Relativamente a isto, trago uma entrevista dada pelo Dr. Drauzio Varela:

segunda-feira, 31 de outubro de 2011

Forças Armadas e Mídia

De todas as coisas contraditórias que se pode assistir na televisão, uma me chamou a atenção, a abertura dos Jogos Militares.

Estava eu assistindo a cerimônia quando me deparo com a apresentação da palavra Paz, imensa, projetada no campo do Engenhão(estádio onde aconteceu a cerimônia).

E aí fico me perguntando, até que ponto vai a hipocrisia e cara-de-pau das nossas Forças Armadas e da nossa mídia? Pois, desde que me entendo por gente, pintam um belíssimo quadro onde jovens bonitos e saudáveis emprestam sua força pelo bem da nação.

Esquecem-se, porém, de afirmar qual a função primordial de um exército: Matar!

As maiores atrocidades que a humanidade já presenciou foram propiciadas por esta instituição na defesa do interesse de seu país, entre outras desculpas esfarrapadas. Só para refrescar a memória:


  • Holocausto Nazista (com a chacina de milhões de "não arianos").
  • Ditaduras Militares (em vários países, incluindo o Brasil).
  • "Limpezas Étnicas" em Geral (Bósnia, Ruanda, etc).
  • Bombas Atômicas no Japão.

Sem contar o fato de que as Forças Armadas são um vórtice de dinheiro público(leia-se: "nosso dinheiro") e que pouco ou quase nada dão em contrapartida, principalmente quando em comparação com outros setores, como Educação e Saúde.

segunda-feira, 24 de outubro de 2011

Livros do Curso de Ciência da Computação


Devido à escassez de determinados livros e de recursos para comprá-los, resolvi disponibilizar alguns dos que consegui garimpar na internet. Estes estarão ordenados de acordo com as disciplinas que eu for cursando e as disciplinas separadas por bloco(do currículo do meu curso). Irei postá-los aos poucos, por isso tenham paciência. Caso algum link não funcione, avisem via comentário.
Obs.: Os livros em formato ".djvu" vem acompanhados do link para o download do djview para windows.

OBS: DEVIDO AO CAOS IMPLANTADO NOS SITES DE DOWNLOADS QUE CULMINOU NO FECHAMENTO DE VÁRIOS DELES E NA ALTERAÇÃO DA POLÍTICA DOS DEMAIS, A MAIORIA DOS LINKS ESTÁ OFFLINE E SERÃO SINALIZADOS COMO TAL. ASSIM QUE CONSEGUIR UM LOCAL SEGURO PARA ELES, VOLTAREI A POR OS LINKS.

1º Bloco

Introdução à Ciência da Computação
Introdução Ilustrada à Ciência da Computação - Larry Gonick

Cálculo I
Apostila de Cálculo I
Cálculo A - Diva Flemming
Cálculo vol1(5.ed) - James Stewart
Calculo vol1 - Guidorizzi
Cálculo vol.1 - Larson Hostetler
Matemática Elementar vol.08
O Cálculo com Geometria Analítica vol.1(3_ed.) - Louis Leithold

Conceitos e Técnicas de Programação
Algoritmos Teoria e Pratica
Introdução ao Desenvolvimento de Algoritmos e Estrutura de Dados
Linguagens e Tecnicas de Programação
Logica de Programação - Andre Luiz Villar Forbellone 3ªed.
Lógica para Computação
Structure and Interpretation of Computer Programs(inglês)
Tecnicas de Programação I
Tecnicas de Programação II

Metodologia da Pesquisa Científica
Metodologia Cientifica - Lakato

Inglês Técnico
Dicionário de Informática e Internet Inglês-Português
Inglês para Informática
Basic English for Computing
Basic English for Computing(CD)


2º Bloco

Calculo II
Paulo Boulos vol.2
Um curso de Calculo vol.3 - Amilton Luiz Guidorizzi
Apostol Calculus vol. 2 (OFFLINE)
Calculo Diferencial e Integral - Shaum (OFFLINE)
Cálculo vol.2 - Leithold
Apostila de Cálculo 2

Circuitos Digitais
Circuitos Digitais - Antonio Carlos Lourenço
Circuitos Digitais
Circuitos Digitais2

Matemática Discreta
Álgebra Moderna 4.ed - Hygino H. Domingues
Matemática Discreta - Rosen(inglês) (OFFLINE)
Matemática Discreta
Problemas de Matemática Discreta

Programação I
C Completo e Total
Fundamentos da Programação de Computadores (OFFLINE)
Introdução a C
Aprendendo a Programar Programando na Linguagem C (OFFLINE)
Illustrating C - Alcock D.(inglês) (OFFLINE) (WinDjView)
C a Reference Manual - Harbison S.P.(inglês) (OFFLINE) (WinDjView)
C Programming Language - Kernighan B.W.(inglês) (OFFLINE) (WinDjView)

Física para Computação I
Apostila de Física para Computação
Fundamentos de Física 3 - Eletromagnetismo - Halliday
Física 1 - Berkeley


3º Bloco

Cáculo Numérico
Cáculo Numérico: Aspectos Teóricos e Computacionais
Cálculo Numérico

Estrutura de Dados
Estrutura de Dados e seus Algoritmos
Introdução a Estrutura de Dados

Programação II
Java e Orientação a Objetos

terça-feira, 19 de julho de 2011

Jogos Violentos e sua (suposta) Influência

Recentemente, em uma aula na universidade, um colega fez uma apresentação sobre a influência dos jogos violentos sobre o comportamento dos jovens.
Calma Todd é só uma Tatoo...
Esse é um assunto que, apesar de muito discutido, permanece polêmico e atual, sobre tudo em razão da tendência que a mídia tem de culpabilizar os jogos pelo comportamento de determinados jogadores.
Muitas vezes assisti ou li notícias do tipo: "jovem faz chacina em escola após jogar GTA".
Ora vejam só, dentre todas as atividades que a pessoa teve ao longo da vida e indiferente à sua própria história, a mídia resolve culpar logo o jogo, pelo simples fato de ele ter um conteúdo de violência. Pessoas que normalmente foram molestadas física e sexualmente na infância, algumas escravas do fanatismo religioso e mesmo assim a mídia responsabiliza um jogo, que talvez tenha sido jogado vez ou outra.
Para ilustrar apresentarei o vídeo mostrado pelo meu colega na sua apresentação:

quinta-feira, 30 de junho de 2011

O que é um Clássico?

Para inaugurar meu recém-nascido blog, pretendo discutir este termo tão amplamente utilizado. Ao relembrarmos as diversas ocasiões em que vimos algo ser classificado como clássico, percebemos que este é um termo que pertence à mesma categoria do verbo "coisar", posto que ambos possuem infindáveis significados.

Jogos entre rivais são clássicos.

A herança Helênica é clássica.

Uma obra literária, cinematográfica, musical, dentre outros gêneros artísticos, que tenha se mantido revisitada constantemente mesmo muito tempo após sua produção é clássica.




E na minha vida de nerd eu sempre me deparo com jogos do naipe de super mário, zelda, super metroid e chrono trigger, aos quais os demais nerds costumam se referir como clássicos.


Mas, afinal, quem outorga a uma invenção humana o grau de clássico?

Deixando um pouco de lado a questão da herança Helênica, a qual só é de interesse da História. Podemos (com uma pitadinha de audácia) afirmar que atualmente o termo clássico se refere àquelas obras que de alguma forma inovaram a forma como se vê e como se produz dentro de seu ramo.

E agora voltemos ao às mídias de entretenimento. O que define um filme ou um jogo como clássico? (lembrando que estes dois exemplos estão longe de esgotar os tipos e variações de mídias de entretenimento.)
Bom, em termos de filmes, podemos dizer que são clássicos aqueles que de forma bastante clara alteraram a realidade, seja influenciando o comportamento de determinado setor da sociedade, seja alterando a forma como os própios cineastas vêem seu trabalho.


Um bom exemplo de um Clássico do Cinema, é o filme Matrix. Note-se, que, apesar do sucesso, em um primeiro instante, muitas pessoas não o assistiram. Já que para muitos o gênero ficção-científica/ação, tem uma temática jovem e/ou trivial. Mas o movimento que eu vi se seguir ao lançamento do filme foi surpreendente. Professores em escolas e universidades comentavam sobre ele, gente que nunca havia se interessado pelo gênero, e muitas vezes nem havia assistido. Intermináveis debates filosóficos se travaram e no fim, a humanidade em sua maioria mudou um pouco sua forma de pensar a respeito de si e da realidade.

Pouco tempo depois, muitos filmes apareceram com temática semelhante. Esse é o tipo de impacto que o faz merecedor do título de clássico.

Já entre os jogos, por esta ser uma mídia focada na interação, normalmente os clássicoas foram aqueles que introduziram ou consolidaram alguma forma inovadora e cativante de interação.
Soaria meu estranho se eu chegasse algumas décadas atrás e dissesse que em breve haveria um jogo mundialmente aclamado em que o personagem principal é um encanador pançudo, bigodudo, descendente de italianos que mata tartarugas e outros seres pulando sobre eles.


O detalhe que omiti em meu relato hipotético é que o tão conhecido Super Mário, em sua simplicidade de enredo te coloca num nível de imersão tal que por algumas horas você acredita que a realidade é aquela que se apresenta na tela e o que está fora dela parece apenas a memória distante de um sonho esquisito.

Então, ouso afirmar que clássico não é só inovação. Inovar por inovar não necessariamente irá gerar grande influência. Outro dia vi um jogo cujo objetivo era cometer suicídio das formas as mais variadas. Mas eu não vejo o personagem desse jogo por aí como garoto propaganda de alguma empresa de desenvolvimento de jogos. Nem vejo ninguém dizendo: "tem um jogo que parece aquele do suicídio" ou; "esse jogo do suicídio só lembra minha infância".

Um Clássico, acima de tudo, tem de romper com um paradigma(ou vários), estabelecer um novo grau de evolução e reafirmar que não existe uma fórmula definitiva quando o assunto é a criatividade humana.