Pular para o conteúdo principal

Postagens

O retorno: doutorado no Brasil, período sanduíche e diferenças entre Brasil-Alemanha

O título dessa postagem mistura três coisas bastante densas para se falar em um única postagem, mas serei o mais breve possível. Notei que se passaram cerca de dois anos desde que escrevi aqui no blog pela última vez, com a série sobre Programação Paralela. Desde então, iniciei o doutorado e o tempo acabou ficando realmente curto para conciliar a escrita de projetos, artigos, código e postagens no blog. Porém, com as últimas experiências e depois de conversas com amigos, resolvi compartilhar um pouco do aprendizado e impressões que obtive nos seis meses que fiquei morando em Karlsruhe, na Alemanha, para realizar uma estadia de pesquisa.

Postagens recentes

Programação Paralela e por que você deveria se preocupar com isso (Parte 3)

Nas publicações anteriores (veja as partes 1 e 2 desta série) foram discutidas diversas questões sobre o paradigma de Programação Paralela, tais como a importância de entender o paralelismo na construção de sistemas, os conceitos básicos, incluindo a taxonomia de Flynn, além de a iminência de sistemas cada vez mais concorrentes e paralelos.

Nesta parte, irei apresentar mais alguns conceitos de programação paralela, focando naqueles que definem o potencial de paralelismo de um sistema. Além disso, irei apresentar a lei de Amdahl, a qual é utilizada para calcular o ganho real na velocidade de processamento ao utilizar técnicas de paralelismo em um sistema.

Programação Paralela e por que você deveria se preocupar com isso (Parte 2)

Como defini na parte 1 desta série de publicações, irei descrever, resumidamente, alguns tipos de conceitos e terminologias associados à Programação Paralela e a organização dos computadores que suportam este paradigma. Pra começar, é conhecido que existem diferentes caminhos para se classificar computadores paralelos. Exemplos podem ser encontrados aqui. (Fonte: http://vedyadhara.ignou.ac.in/wiki/images/8/8e/B1U2mcse-011.pdf)
Nesta publicação iremos conhecer a classificação de computadores paralelos de acordo com a famosa Taxonomia de Flynn.

Programação Paralela e por que você deveria se preocupar com isso (Parte 1)

Creio que a maioria dos desenvolvedores já deve ter ouvido falar de threads, aprendeu um pouco sobre semáforos, monitores e travas. Partindo desse meu pensamento, imagino que essa mesma maioria não utiliza nenhuma forma de programação paralela em suas aplicações. A pergunta que fica é: utilizar paralelismo e lidar com concorrência tem baixa popularidade entre os desenvolvedores porque não tem utilidade ou porque os cursos de graduação em computação estão carentes de uma disciplina que ensine aos graduandos os reais benefícios em ter uma base sólida nesta área?

Esta série de publicações irá trazer uma visão básica sobre Parallel Programming, os exemplos serão baseados em Java e muito do que mostro aqui pode ser encontrado de maneira mais aprofundada no livro "The Art of Multiprocessor Programming", dos autores Maurice Herlihy e Nir Shavit.

A Ascensão do Desenvolvedor e suas Implicações

Mais do que nunca, esta é a era do desenvolvedor (em um passado não muito distante, chamado programador). Considerando que até pouco tempo atrás, os programadores estavam trancados em salas cheias de máquinas, hoje vemos desenvolvedores que são fundadores, executivos, e muitos estão entre os mais valiosos colaboradores das empresas. Hoje somos um número significante. Em um estudo publicado em julho de 2013, o Evans Data estimou que existem 18,2 milhões de desenvolvedores de software em todo o mundo, um número que irá crescer para 26,4 milhões até 2019, um crescimento de 45%.

O Mito da Graduação. A Necessidade de Ser um Case.

Estamos na época em que, se você atirar um pedra para cima, ou ela cai em um estudante universitário ou em um rebelde esquerdista político Che Guevara Human Rights Homosexuality Defensor Certified. Na maioria das vezes, essa pedra acerta um aluno de computação ou de direito.

Para se ter um ideia, existem cerca de 1600 faculdades de direito no mundo. O interessante é que só no Brasil são 1230 instituições. Outra curiosidade, envolvendo o incentivo à formação universitária por aqui, e focando na área de computação, é que desde quando entrei na minha graduação (Sistemas de Informação) em 2008, se ouve falar que o mercado de TI é promissor, carente de profissionais, e, inclusive, ótimo para empreender negócios com chance de faturamento milionário. Mas, se formos passar pela peneira da realidade, quantos dos 65 mil alunos formados na área de TI por ano obtém um lugar ao sol?

Tutorial: Desenvolvimento de Software Baseado em Modelos na Prática com Epsilon, Parte 3

Continuando a série de publicações deste tutorial, que ensina como desenvolver software utilizando a abordagem MDD, nesta terceira parte, iremos finalizar o desenvolvimento da ferramenta CASE, adicionando a funcionalidade de geração de código e como gerar a versão standalone do editor.

Sei que você deve estar pensando que é muita coisa, mas tá quase acabando. :)