ago 4 2009

MacBook Fly

Eu sempre tive vontade de adquirir um MacBook Pro por ser uma ótima maquina (notebook), com configurações de hardware espetaculares, sem contar o MAC OS… Já ouvi muitos comentários sobre essa notebook mas o vídeo abaixo me mostrou uma funcionalidade que não conhecia.

O MacBook também pode voar!


ago 2 2009

iCake

Qual será tema da festa de aniversário do seu filho quando ele completar 1 ano de idade?!

Ainda não sabe… Bom então eu tenho uma sugestão pra você, o “iCake”!

Esse é um bolo feito no formato de um MacBook, conectado via USB com um iPhone, além é claro das canetas, post-its, mouse, etc… Isso é o que eu chamo de uma “trabalho gostoso”.

Produzido pela Bcake, em Nova York.
Mais fotos


jul 5 2009

JVM – Java Virtual Machine

Dentro da linguagem de programação Java existe um importante “instrumento”, que permite às aplicações desenvolvidas nessa linguagem seja multi-plataforma, esse “instrumento” é o que conhecemos como JVM (Java Virtual Machine).

Antes de entrar no que é exatamente a JVM, precisamos saber como as aplicações desenvolvidas em outras linguagens, como C ou Pascal funcionam diante de cada sistema operacional.

Para essas linguagens, o código fonte é compilado de acordo com o sistema operacional, isso se faz necessário pois após a compilação aquela aplicação conversará apenas com aquele determinado sistema operacional.

Nesse cenário teremos um executável da aplicação para Linux, outro para Windows, etc.

A JVM tem o importante papel de traduzir o que a sua aplicação (Java) está requisitando, para  a cada uma das camadas do sistema operacional onde aquela aplicação está rodando.

Isso é feito através do Bytecode, o qual é interpretado pela JVM e após é enviado ao sistema operacional.

O bytecode é composto por uma sequência de instruções para JVM, onde cada uma dessas instruções consiste em Opcode seguido por zero ou mais operadores. O Opcode indica quais medidas a JVM deve tomar.

O número total de opcodes é pequeno o suficiente para que ocupem apenas um byte.

Java é lento…

Hoje, graças às otimizações da JVM, é possível que o Java tenha desempenho similar a linguagens como C, isso possível graças a otimizações como a compilação especulativa, que aproveita o tempo ocioso do processador para pré-compilar bytecode para código nativo.

Além disso, ainda existem outros mecanismo que permitem um desempenho ainda melhor, é o caso do HotSpot.

Trata-se de uma tecnologia que a JVM utiliza para detectar os “pontos quentes” da aplicação (código executado muitas vezes) e, quando a JVM julgar necessário transformar aquilo em linguagem nativa.

O compilador responsável por isso é o JIT - Just inTime Compiler, o compilador que aparece “bem na hora” que você precisa.

Entretanto isso ainda possui algumas desvantagens…  A pré-compilação exige tempo, o que faz com que programas Java demorem um tempo significativamente maior para começarem a funciona

Porém isso não é um grande problema para programas que rodam em servidores e que deveriam ser inicializados “apenas uma vez” (a cada início do SO).

O Java hoje já é utilizado em diversas aplicações de grande escala, como podemos ver no link - Java in Action

Você pode encontrar mais informações sobre a JVM no Ebook VM Spec


jun 29 2009

Aprenda a dançar com Crazy Frog – In the House


jun 29 2009

Você não consegue fazer isso!


jun 21 2009

Tomara que a tecnologia não evolua.


jun 20 2009

Monocleta

Via FunForever


jun 20 2009

Opera Unite

Opera Software disponibilizou a sua nova tecnologia experimental chamada Opera Unite que transforma o navegador de internet em um servidor para compartilhamento na web.

Opera Unite permite que você possa compartilhar arquivos, documentos, músicas, fotos, vídeos, executar web sites e sala para bate-papo sem qualquer necessidade de software adicional, também está integrado no navegador diversas APIs que auxiliam os desenvolvedores na criação de aplicações adicionais para a plataforma.

Veja o vídeo de apresentação:

Veja também como utilizar o novo Opera em apenas 2 minutos…


jun 20 2009

IE8 x Firefox e Chrome

A microsoft lancou um quadro comparativo pra demostrar os pontos positivos do Internet Explorer 8 em relação aos navedores, Firefox e o Chrome.

Mas esse quadro ta meio estranho, vejam…

Via GoogleDiscovery


jun 18 2009

Pesquisa de novos conceitos de Cloud computing

O Cloud computing consiste basicamente em compartilhar ferramentas computacionais interligando sistemas, ao invés de ter essas ferramentas localmente (mesmo nos servidores internos). Por isso se trata de é um conceito, não uma solução pronta.

Com isso existe em andamento algumas pesquisas com o objetivo de reduzir custos e aprimorar a infraestrutura para o uso dos clientes. Abaixo algumas pesquisas que estão sendo desenvolvidas…

Nebulas

Pesquisadores da Universidade de Minessota investigam um modelo de fornecimento de cloud computing cuja principal característica é a distribuição de recursos ociosos para a formação de nébulas, ou seja, conjunto de nuvens.

Esse projeto ainda está no papel, mas promete ser uma solução ideal para empresas como Amazon, IBM e Google, que possuem grande número de servidores.

CloudViews

Segurança é algo que está sempre em discução quando se fala em Cloud Computing, com isso, pesquisadores da Universidade de Washington veem uma série de oportunidades no fato de serviços web e aplicações estarem tão próximas.

O CloudViews é um sistema desenvolvido pelos pesquisadores da instituição, que facilita a colaboração por meio de compartilhamento de dados entre serviços devidamente protegidos.

Cloud Computing cripitografado

O laboratório Max Planck Institute for Software Systems, também preocupado com a questão da segurança, desenvolveu um modelo que possibilita aos fornecedores de infraestrutura como serviço, como a Amazon, oferecer ambientes em caixa fechada, garantindo que máquinas virtuais possam realizar execuções confidenciais no ambiente.

A plataforma proposta seria uma forma de assegurar aos consumidores que seus dados não estariam acessíveis ao fornecedor e possibilitaria que as empresas assegurassem a troca segura de dados, mesmo entre diferentes máquinas virtuais.

Conceitos como os citados acima podem potencializar ainda mais a plataforma de Cloud Computing.

Leia mais no Computerworld