quinta-feira, 14 de abril de 2011

São Paulo sobe 21 posições em ranking de produção científica

Um relatório divulgado na Grã-Bretanha diz que São Paulo subiu da posição 38 para o 17º lugar em um ranking de cidades com mais publicações científicas no mundo.
De acordo com o estudo feito pela Royal Society, a academia nacional de ciência britânica, a evolução da capital paulista nesse setor “reflete o rápido crescimento da atividade científica brasileira”.
O relatório, chamado Conhecimento, Redes e Nações: A Colaboração Científica no Século 21, analisa a publicação de trabalhos científicos por país no período entre 1996 e 2008.
O documento indica que o Brasil e outros países emergentes, liderados pela China, estão despontando como grandes potências na área de produção de estudos científicos, capazes de rivalizar com países que têm tradição nessa área, como os Estados Unidos, nações da Europa Ocidental e o Japão.
A representatividade dos estudos brasileiros teve leve aumento: entre 1999 e 2003, eles equivaliam a 1,3% do total de pesquisas científicas globais. Entre 2004 e 2008, essa porcentagem subiu para 1,6.
Mas “as reduções significativas no orçamento de ciência em 2011 levantam preocupações”, diz o relatório. Em meio aos cortes de R$ 50 bilhões anunciados pelo governo no orçamento federal, o Ministério de Ciência e Tecnologia deve perder R$ 1,7 bilhão.
China
Segundo o levantamento, o desempenho da China é ''particularmente notável'' - a publicação de documentos científicos do país superou as do Japão e da Europa nos últimos anos.
O país asiático só é ultrapassado pelos Estados Unidos, mas deve superá-los antes de 2020, se a atual tendência continuar.
Em 1996, os Estados Unidos tinham produção científica dez vezes maior que a chinesa; hoje, sua produção, com crescimento menor, não chega a ser o dobro da do país asiático.
No entanto, o relatório diz que ''ainda demorará algum tempo para que a produção dessas nações emergentes esteja à altura de ser uma referência para a comunidade científica internacional'', ressalta a pesquisa.
Áreas específicas
O estudo diz que há avanços em áreas específicas da ciência em alguns países, entre eles o Brasil.
''Existe diversificação de alguns países demonstrando lideranças em setores específicos, como a China em nanotecnolgia, e o Brasil em biocombustíveis, mas as nações avançadas do ponto de vista científico continuam a dominar a contagem de citações.''
A pesquisa também identificou nações emergentes no campo da ciência que não costumam ser associadas a uma base científica forte, como o Irã, a Tunísia e a Turquia.
As projeções feitas pelo relatório “sugerem que o sistema científico global está se desvencilhando de seu padrão anterior”.
“China e Coreia do Sul cumprem com suas ambiciosas metas de investimento em pesquisa e desenvolvimento, enquanto economias como Brasil e Rússia também prometem recursos substancialmente maiores para pesquisas.”
Com isso, é possível que nações emergentes – Brasil incluído – superem os investimentos de países como Japão e França no setor.
Fonte: BBC

quarta-feira, 13 de abril de 2011

Cinco pontos fundamentais para decisões relacionadas à carreira

Tomar decisões sobre o curso da carreira nunca é fácil, esteja o profissional procurando por um novo emprego ou avaliando a oferta de um empregador em potencial.
É por isso que ter um guia objetivo para a tomada de grandes é importante. A recrutadora da empresa norte-americana de RH Russel Reynolds Associates, Shawn Banerji, aconselha os executivos a seguirem cinco critérios na avaliação de uma oferta de emprego: posição, pessoas, plataforma, lugar e pagamento. “Esses são os cinco pontos que devem ser levados obrigatoriamente em consideração”, diz Banerji.
Essa metodologia ajuda a reduzir a complexidade da decisão direcionar o foco da análise e levar o executivo a refletir se vale mesmo a pena deixar a posição atual.
Confira os detalhes sobre cada ponto a ser a avaliado:
1 – Posição – Para determinar se a posição que está sendo oferecida é a certa para o profissional, ele deve ter respostas claras para uma série de perguntas: qual será seu papel efetivo na nova empresa? Quais serão as responsabilidades do papel e as expectativas para com o mesmo? Está confiante que pode ser bem sucedido no papel? Para quem se reportará? Qual a importância do cargo na escala de valor da companhia? Terá o poder necessário para fazer as realizações que espera?
2 – Pessoas – O profissional se dá bem com as pessoas com as quais trabalha atualmente ou com as quais pode vir a trabalhar? Banerji ressalta que isso é muito importante, já que o tempo gasto com os colegas chega a ser maior do que o investido em família e amigos.
3 – Plataforma – O profissional conta com uma plataforma com a qual se sente confiante e pronto para dar contribuição material? É importante considerar os objetivos de negócios da companhia: ela está passando por uma reformulação? Crescimento? Aquisições ou alienação? Banerji diz que essencial é entender como as habilidades e competências do profissional se alinham com a direção dos negócios.
4 – Lugar – Onde a vaga está localizada fisicamente? O mercado imobiliário na região facilita a realocação para assumir o novo cargo? O novo empregador ajudará com a mudança?
5 – Pagamento – O retorno da investida é proporcional ao risco que se está tomando ou a contribuição que será feita?
Apesar de os conselhos de Banerji terem sido direcionados aos executivos, eles se aplicam a profissionais de todos os níveis. Tente aplicá-los.
Fonte: Computerworld

quarta-feira, 6 de abril de 2011

Herança vs Composição

Gostaria de compartilhar o artigo publicado no site iMasters pelo colega Lucio Camilo, fazendo um comparativo interessante entre Herança e Composição.

Na verdade, esse artigo não é bem um comparativo, e sim uma "desqualificação" do uso da herança. Na minha opinião, não há solução ideal para todos os problemas, nem modelo ideal de arquitetura. Há sim uma solução específica para um problema específico.

Citando o velho exemplo do objeto Veículo, que pode ser especializado como Carro, Bicicleta, Carroça, Caminhão, é um caso claro onde a Herança se aplica muito bem. Mas volto a dizer, não sou defensor de arquitetura A, B ou C, defendo sim a avaliação de cada problema, e a aplicação da solução adequada para cada um, seja com Herança, Composição, Agregação, ou seja lá o que for.

Vamos ao artigo publicado:
Há algum tempo, herança era considerada a ferramenta básica de extensão e reuso de funcionalidade. Qualquer linguagem que não possuísse o conceito de herança “não servia para nada”. Atualmente, todos os artigos sobre padrões de projeto desaconselham a utilização de herança.

E agora?

Um princípio básico de padrões de projeto é “dar prioridade à composição”, preferir sempre “tem-um” ao invés de “é-um”. Quanto à herança, deve ser utilizada com muita prudência e em pouquíssimas situações.
Uma das poucas certezas que temos no desenvolvimento de aplicações é que existirão alterações. Portanto, a utilização de herança para fins de reutilização não dá tão certo quando se tratam de manutenções nos códigos já existentes.
Supondo que utilizamos uma classe pai para encapsular o comportamento de algum objeto. Dessa forma, todas as nossas classes filhas herdarão esses comportamentos. E o problema ocorre quando alguma das classes filhas não precisam de algum dos comportamentos que estão encapsulados. Passamos a ter que mudar o código na classe filha para que o método que foi herdado funcione da maneira específica para esse objeto. Ou, pior ainda, quando esse objeto não necessitar desse comportamento, então teríamos que sobrescrever o método para que ele não faça nada.
Alguns dos problemas dessa implementação é que o encapsulamento entre classes e subclasses é fraco, e o acoplamento é forte. Assim, toda vez que uma superclasse for alterada, todas as subclasses podem ser afetadas. Perceba que estamos violando o princípio básico de OO (Alta Coesão, Baixo Acoplamento).
Ainda com herança, a estrutura está presa ao código, e não pode sofrer alterações facilmente em tempo de execução, fazendo diminuir a capacidade de polimorfismo.
Quando utilizamos composição, instanciamos a classe que desejamos dentro de nosso código. Dessa forma, estamos estendendo as responsabilidades pela delegação de trabalho a outros objetos. Em vez de codificar um comportamento estaticamente, definimos pequenos comportamentos padrão e usamos composição para definir comportamentos mais complexos. Ainda na utilização de composição, podemos mudar a associação entre classes em tempo de execução e permitir que um objeto assuma mais de um comportamento.
Ao utilizar a composição, teremos muito mais flexibilidade, além de ser mais comum em muitos padrões de projetos. Porém, na herança, temos uma possibilidade de desenvolver mais rápido, diminuindo o tempo de desenvolvimento, levando em conta que perdemos muito mais tempo mantendo e alterando o código original do que com o desenvolvimento inicial. Portanto, nosso esforço deve ser sempre voltado para a reutilização e para a manutenção.

Aproveito para indicar um artigo interessante que conta com códigos mostrando o motivo de nunca se utilizar herança: veja aqui.
Fonte: iMasters

segunda-feira, 4 de abril de 2011

Algumas verdades sobre programação

Este artigo é a tradução de artigo escrito por David Veksler, no qual ele conta o que sua experiência como programador lhe ensinou.

O texto original pode ser encontrado aqui.

E vamos ao que interessa:
  • Um programador gasta cerca de 10% a 20% do seu tempo escrevendo código. Normalmente escreve entre 10 e 12 linhas por dia, que estarão presentes no produto final independentemente do seu nível de perícia ou experiência. Bons programadores gastam cerca de 90% do seu tempo pensando, pesquisando e experimentando maneiras de encontrar a solução ótima. Os programadores ruins gastam quase 90% do tempo debugando e fazendo alterações muitas vezes aleatórias na tentativa de “fazer funcionar”.
  • Um bom programador é dez vezes mais produtivo do que um programador comum. Um excelente programador é entre 20 e 100 vezes mais produtivo do que um convencional. Não é um exagero. Estudos desde os anos 60 têm mostrado isso consistentemente. Um mau programador não é só improdutivo - além de não concluir o trabalho com êxito, gera dores de cabeça e trabalho extra para outras pessoas consertarem.
  • Excelentes programadores gastam pouco do seu tempo escrevendo (código que de fato estará no resultado final). Os programadores que gastam muito do seu tempo escrevendo provavelmente não estão encontrando e utilizando soluções existentes para problemas antigos. Bons programadores são ótimos em reconhecer e em reutilizar padrões comuns e não têm medo de refatorar seu código constantemente, a fim de atingir a solução ótima. Programadores ruins escrevem código que falha em integridade conceitual, não-redundância, hierarquia e padrões, tornando complicada a refatoração, fazendo com que seja mais fácil jogar fora todo o trabalho e recomeçar.
  • Software, como qualquer coisa, obedece às leis da entropia. Contínuas mudanças levam ao desgaste do software e de sua integridade conceitual planejada originalmente. A entropia é inevitável, no entanto, programadores que falham ao estabelecer a integridade conceitual criam sistemas que se desgastam tão rapidamente, que muitas vezes se tornam inúteis e caóticos demais mesmo antes de serem concluídos. Possivelmente, o motivo mais comum para falha em projetos é o rompimento da integridade conceitual devido à entropia descontrolada (o segundo mais comum é a entrega de um produto diferente do que o cliente esperava). A entropia desacelera exponencialmente o desenvolvimento e é o principal motivo para deadlines desesperadoras.
  • Um estudo realizado em 2004 revelou que 51% dos projetos falham ou irão falhar em alguma funcionalidade importante e que 15% simplesmente vão falhar como um todo, o que é um grande avanço desde 1994, quando 31% dos projetos falhavam criticamente.
  • Embora muitos softwares sejam desenvolvidos em equipe, não se trata de uma atividade democrática. Geralmente somente uma pessoa é responsável pelo “design” do sistema e o resto do time o completa com detalhes.
  • Programar é um trabalho pesado. É uma atividade mental intensa. Bons programadores pensam sobre seu trabalho 24/7. Eles escrevem seu código mais importante no chuveiro, sonhando etc., porque o trabalho mais importante é feito longe do teclado. Projetos não são concluídos mais rapidamente gastando mais tempo no escritório ou adicionando pessoas novas ao projeto.
“Um excelente operário pode ser duas ou até três vezes mais produtivo que um operário comum, já um bom programador pode fazer com que seu trabalho seja mais do que 10 mil vezes mais produtivo do que um programador comum” - Bill Gates
Fonte: http://dotmac.rationalmind.net (Traduzido por iMasters)

quinta-feira, 31 de março de 2011

Mais uma vez.... cheiro de Pizza em Brasília - Durval Barbosa livre da detenção

Justiça reduz pena em dois processos e Durval Barbosa se livra da detenção


A Justiça reduziu as penas em dois processos criminais do ex-secretário de Relações Institucionais do GDF Durval Barbosa. Ele foi beneficiado, principalmente, por ter participado da delação premiada. Em um dos processos, em 2004, quando era presidente da Codeplan, Durval contratou a empresa Evidência Pesquisa de Opinião e Mercado LTDA sem licitação. Os repasses somaram R$ 616 mil. A sentença para este caso foi de quatro anos de detenção. Nesta quinta-feira (31/3), a defesa conseguiu que ela diminuisse para um ano e seis meses. Com essa redução, o caso já prescreveu e o processo acabou extinto.

No outro processo, em 2005, ainda presidente da Codeplan, Durval contratou a empresa Patamar Manutenção de Domínio LTDA sem concorrência pública. A pena de quatro anos e sete meses havia sido diminuída para dois anos e 13 dias, devido ao benefício da delação premiada. O tempo ainda foi diminuido, nesta quinta, para um ano, seis meses e 20 dias. A 2ª Turma Criminal concedeu ainda o benefício para que Durval cumpra penas restritivas de direito. Assim, o ex-sexretário terá que cumprir medidas alternativas, que serão fixadas pela Vara de Execuções Penais.



A multa de 4,5% fixada sobre o valor do contrato, que era de R$ 9,8  milhões, foi reduzida para 2%. Durval também foi liberado de ressarcir os R$ 9,8 milhões aos cofres públicos.


Fonte: Correio Braziliense

Web semântica é o futuro das buscas na internet

Anunciada há anos como a evolução natural da web 2.0, tecnologia começa ganhar mercado por meio do modelo SaaS.

O sócio da empresa norte-americana de investimentos Alpha Equity Management, Vince Fioramonti, teve uma visão em 2001: ele percebeu que a web já ficara rica em informações sobre investimentos e que havia um crescente número de fornecedores oferecendo software para capturar e interpretar informações baseadas em importância e relevância.
Segundo Fioramonti, a companhia já tinha um time de analistas lendo e tentando resumir informações financeiras sobre companhias. Mas o processo era muito lento e tinha a tendência de ser subjetivo e inconsistente.
No ano seguinte, a empresa resolveu iniciar um trabalho mais qualificado com uma plataforma semântica para processar várias formas de informação digital de maneira automática, mas a primeira ferramenta utilizada proporcionava somente algoritmos gerais. A Alpha teria de investir em um time de programadores e analistas financeiros para desenvolver algoritmos específicos. Com um alto custo, o board acabou derrubando o projeto.
Segundo Fioramonti, restou à empresa recorrer a um provedor de serviços externo para tentar resolver os problemas. Mas somente em 2008 a empresa começou a ver resultados, depois assinou uma ferramenta que coleta e analisa informações de diversas fontes noticiosas, incluindo a Reuters, veículos online, jornais e blogs. Após a análise, a ferramenta pontua o sentimento do público em relação à companhia ou produto, além da sua relevância e grau de inovação. O nome do provedor de serviços é Thomson Reuters.
Os resultados são divulgados para clientes, incluindo relações públicas, profissionais de marketing, negociadores de ações e gerentes de portfólio de ações que agregam essas informações em decisões de longo prazo no tocante a investimentos.
A ferramenta não é exatamente barata. A Thomson Reuters não divulga valores, mas estimativas indicam que a assinatura mensal, que inclui atualização em tempo real das consultas, gira entre 15 mil e 50 mil dólares por mês. Mas, para uma empresa como a Alpha, o valor gerado justifica o preço. “As informações ajudaram a alavancar o desempenho do portfólio da companhia e permitiu à Alpha Equity obter diferenciais frente aos concorrentes.”
Independentemente da forma escolhida, o preço por contar com uma tecnologia de web semântica é alto. Maior ainda se a informação procurada incluir jargões, conceitos e acrônimos que forem específicos de um negócio em particular. Mas o mercado hoje já está bem mais avançado que há dez anos e oferece opções para quem se interessa por uma solução do gênero.
Entre os grandes fornecedores, Oracle, SAS e IBM possuem ofertas no contexto de suas soluções analíticas e preditivas. Mas uma série de fornecedores de menor porte, principalmente startups norte-americanas, tem algum destaque no mercado. Entre elas estão Cambridge Semantics, Expert System, Revelytix, Endeca, Lexalytics, Autonomy e Topquadrant.

Padrões da web semântica
Pensando no futuro da web semântica, o World Wide Web Consortium (W3C) determinou padrões de linguagens que devem ser seguidos na construção das páginas, como RDF, RDFS e OWL. Estes são de grande valia para as empresas de software, pois, com eles, é possível desenvolver uma série de técnicas para analisar e descrever o significado de objetos de dados e seus relacionamentos. Isso inclui um dicionário de termos genéricos e específicos da indústria, assim como análise de gramática e contexto para resolver ambiguidades idiomáticas, como palavras com múltiplos sentidos.
Para ilustrar a vantagem dos padrões, o CEO da Revelytix, Michael Lang, descreve que se todos os vendedores de produtos eletrônicos online usarem os padrões em seus catálogos, os consumidores poderão, por meio de um browser em conformidade com as regras da W3C, obter bons resultados com consultas complexas como “mostrar todas as TVs de tela plana entre 42 e 52 polegadas, organizadas por preço”.
Já existe no mercado sites que fazem esse tipo de comparação, mas não raro as informações estão desatualizadas, imprecisas ou incorretas. Ela não consegue, por exemplo, filtrar disponibilidade de tamanho ou cor, por exemplo. E a web semântica traria uma nova dinâmica nessa questão.
Para as empresas, a dinâmica é parecida. Encontrar informações qualificadas assemelha-se à essa experiência do consumidor, questão que os principais fornecedores estão buscando resolver. 

Opções 
Para as grandes empresas, iniciar um projeto de web semântica de imediato não é tão difícil se houver dinheiro para investir. As menores, no entanto, podem seguir a Alpha Equity e buscar um fornecedor externo que ofereça serviços semânticos.
Além da Thomson Reuters, o mercado norte-americano possui o serviço OpenCalais, também baseado em busca de agregadores de notícias, blogs, catálogos e outras aplicações.
Outros serviços vêm de empresas como DNA13, Lithium Technologies e Cymfony, todas com a mesma tendência de coletar informações na web por meio de consultas específicas e analisar notícias e a mídia social, mas com um olhar específico sobre reputação e gerenciamento de marca, gestão de relacionamento com consumidor e marketing.
Fonte: IDG Now

Google quer introduzir aplicativo para reconhecimento facial em smartphones

O Google anunciou que planeja introduzir um aplicativo para permitir que os usuários acessem informações como nome, telefone e e-mail das pessoas através do reconhecimento facial de fotos.

Apesar de a tecnologia estar praticamente pronta, o Google está às voltas com os aspectos legais do programa. Isso porque, para serem identificados pelo software, os participantes do projeto precisarão concordar com os termos do serviço. Logo, ele ainda não tem data de lançamento.

Hartmut Neven, diretor de engenharia para reconhecimento facial do Google, esclareceu que a demora no lançamento se dá pelo fato de o Google ser uma companhia já estabelecida e, portanto, precisa ser mais conservadora em suas decisões do que uma pequena start up que não tem nada a perder.

Recentemente, a empresa se envolveu em uma série de questões referentes à privacidade de seus usuários. Entre elas estão problemas com o Street View, o serviço de visualização de imagens de ruas do Google Maps. No ano passado, o Google assumiu que os carros que tiravam as fotografias acidentalmente copiaram dados criptografados via Wi-Fi, como senhas e e-mails pessoais de internautas.


Fonte: Olhar Digital / iMasters