Gosto muito do WordPress, gosto mesmo, uso todos os dias e, de quanto em vez, até escrevo sobre ele. Porém, sempre tem um porém, me irrita essa mania de dar tela branca que este treco tem. Você está lá… feliz e faceiro, testando novos plugins no seu blog e, de repente, sem mais nem menos. Pimba! Tenta entrar no admin e tudo que recebe é uma tela em branco, uma página sem nenhuma informação, sem nada, o vazio.
E ai, começa o inferno.

página em branco no wordpress

Por lloydsscreenies

Procure na internet, em português, em inglês, em coreano…. tudo que consegue são conselhos e mais conselhos de como renomear seu diretório de plugins, ou apagá-los, e começar tudo de novo.  Já fiz isso, inúmeras vezes mas, agora basta. Esta foi a última vez.

Uma hora de pesquisa e encontrei a função wp_redirect no  wp-includes/pluggable.php. Admito que poderia ter sido mais rápido de tivesse lido a droga do manual, online… em fim…

A wp_redirect é usada para redirecionar (duh!) urls e termina com uma função header e do php. Ocorre que esta função só consegue redirecionar a página se nenhum tipo de saída tiver sido executada anteriormente. Ou seja, basta um echo mal colocado em qualquer script carregado por qualquer plugin para que a wp_redirect não funcione e a header emita um erro que você não verá já que, por padrão, a maior parte dos hosts está com os erros de php desligados.

Para ver o erro e conseguir resolver o problema, coloquei três linhas de código antes da chamada header na wp_redirect:

error_reporting(E_ALL | E_WARNING | E_NOTICE);

ini_set(‘display_errors’, TRUE);

flush();

Com isso, foi possível ver os erros que a função header estava emitindo, e corrigir o código do plugin. Viva!!!

Outra solução seria colocar uma bosta de try na wp_redirect que emitisse uma merda de mensagem de erro e pronto. Nunca mais ninguém veria uma página em branco.

Cientistas do laboratório Argone publicaram um estudo onde mostram o uso de ondas acústicas de alta frequência, além da capacidade auditiva humana, e alta intensidade para levitar gotas de medicamento. A ideia é provocar a evaporação dos medicamentos antes que estes cristalizem.

Medicamentos amorfos, não cristalizados são mais solúveis e são absorvidos melhor pelo organismo.

Explicou Chris Benmore líder do estudo.

fonte: Wired

Os limites internos e externos dos átomos em uma única molécula
Os limites internos e externos dos átomos em uma única molécula
Molécula vista com altíssima resolução

A fotografia acima, com toda certeza é uma das mais importantes já tiradas. Trata-se da foto de uma única molécula de Hexabenzocoronene, seis moléculas de benzeno em um arranjo especial (C42H18), pode-se ver a ligação entre os átomos, o espaço livre entre eles e a diferença entre as ligações internas e a camada externa.

Na imagem a seguir, peguei a foto original da IBM e fiz a sobreposição da molécula do Hexabenzocoronene, como imaginamos que os átomos deveriam estar organizados considerando o que sabemos sobre as forças que atuam no nível atômico. A coincidência é assustadora.

Sobrepondo os átomos teóricos sobre a foto da IBM
Sobrepondo os átomos teóricos sobre a foto

Para retirar esta foto, o time de pesquisadores da IBM, pegou uma agulha, passou pela molécula e foi registrando em meio eletrônico os vales e aclives da molécula. Simples assim.

Agora imagine a espessura desta agulha. Imagine a necessidade de isolamento para que uma respiração, ou pensamento mais intenso, não provocasse uma vibração. Simplesmente incrível.

A pesquisa é necessária para entender as complexidades da distribuição atômica e tem grande importância para os semicondutores do futuro.

Fonte: BBC

Desenvolvendo aplicativos com o sencha touch para android

Ontem nós vimos a primeira parte de um passo a passo, melhor, uma viajem, pelos meandros do framework Sencha Touch. Aprendemos o como e, boa parte do, porquê as coisas são como são. Hoje vamos colocar algum tempero nesta sopa.

Vamos adicionar uma ação ao botão Novo, que deve estar bem visível no canto superior esquerdo da sua tela, como pode ser visto a seguir:

 

 

Esqueceu? Tudo que você precisa fazer para continuar é abrir o seu navegador (Chrome? Firefox?) e digitar http://localhost/ts/ na barra de endereços e voltar onde paramos ontem.

Vamos criar um controller para adicionar alguma atividade ao botão Novo. Para isso crie o arquivo Novo.js no diretório controller e copie o código a seguir para ele:

Ext.define("Teste.controller.Novo", {
    extend: "Ext.app.Controller",
        config: {
           refs: {
              newNovo: "#novo-btn"
           },
           control: {
               newNovo: {
                 tap: "onNovo"
               }
           }
        },

        onNovo: function() {
          console.log("O botão Novo foi tocado");
        }
});

Lembre-se, pode recarregar seu navegador a vontade que nada irá acontecer. O controller está criado mas, ninguém sabe da sua existência. Mas especificamente o app.js não têm nenhuma referência para ele. Sendo assim temos que modificar o app.js mas, antes, vamos dar uma olhada neste controller.

A primeira coisa que notamos é que ele segue a mesma estrutura da view. Isso por que, na hora que você, lá no app.js, definiu uma classe herdeira do singleton Ext, criou imediatamente cinco namespaces:

 

  • Teste
  • Teste.view
  • Teste.controller
  • Teste.model
  • Teste.store
  • Teste.profile

 

Ok, você já reparou? São seis. Juro que um dia aprendo a contar. Na verdade já existem alguns outros predefinidos. Estes são apenas os que você usará mais. Os outros? Veremos com o tempo.

Então a primeira linha do controle define o nome da classe, em seguida começamos a entrar com os atributos desta classe e começamos dizendo que ela estende a classe “Ext.app.Controller”.

Esta classe é a classe base responsável por responder todos os eventos que ocorrem no seu aplicativo. Um objeto controller irá existir no contexto de um determinado aplicativo e será responsável por observar os eventos referentes a este aplicativo. Um aplicativo, normalmente, é composto de um conjunto de controllers.

Todos o controllers que o aplicativo usar deverão ser especificados na seção config da classe aplicativo.

Assim que definimos a superclasse passamos a configurar esta herdeira e o primeiro atributo é o config. Começamos por definir um objeto refs.

Os objetos refs são coleções de objetos nomeados que permitem a referência de objetos no seu aplicativo. Neste caso apenas criamos a referência newNovo que aponta para objeto novo-btn que criamos lá na view. Próximo passo, definir o objeto control.

refs: {
    newNovo: "#novo-btn"
},

O objeto control contém um mapa dos objetos e eventos que devem ser observados pelo controller e que método será chamado. No nosso caso, estamos monitorando o botão newNovo com referência ao evento tap e dispararemos o método onNovo.

control: {
    newNovo: {
       tap: "onNovo"
    }
}

Falta apenas definir o que o método onNovo fará. Por enquanto, vai chamar o console e enviar a mensagem: O botão novo foi tocado.

Para testar o controller vamos alterar o código do app.js:

Ext.application({
    name: "Teste",
    views: ["ViewUm"],
    controllers: ["Novo"],

    launch: function () {
       var viewum = Ext.create("Teste.view.ViewUm");
       Ext.Viewport.add(viewum);
    }
});

Feito? Recarregue a página, clique em qualquer lugar com o botão direito do mouse e escolha inspecionar elemento. Quando a janela de desenvolvimento web abrir clique no botão console. E depois no botão Novo do seu aplicativo.

Você deverá ver a mensagem que escrevemos no console. Viva! Não viu? Então dançou… melhor começar novamente ou, se for realmente decidido, pode tentar ler as mensagens de erro que estão no console. Com certeza uma delas indica o que você fez de errado.

Parou!!! Você está vendo uma pilha de mensagens de erro e, ainda assim, a o botão Novo funcionou? Não se preocupe, no tempo certo vamos tirando todas estas mensagens.

Amanhã continuamos… O que estão achando?

Como vimos nos artigos anteriores, não é difícil criar a estrutura necessária para o desenvolvimento de aplicativos móveis usando o CSS3, HTML5 e Javascript. Principalmente se usarmos uma biblioteca como a Sencha Touch. Neste artigo vou considerar que você já configurou o ambiente e já gerou o aplicativo padrão o Get Started. Se não, siga o link acima e volte aqui mais tarde.

Vamos criar um aplicativo simples, com uma ou duas views, um ou dois controllers, alguns botões. Mais para você entender todo o processo que para uma funcionalidade específica. Comece criando uma estrutura nova. Chamaremos este aplicativo de Teste. Desculpe, deixei a criatividade na praia. Para isso, usando a linha de comandos, vá a pasta sencha, no diretório de documentos do Apache e digite:

sencha generate app -p ../ts -n Teste

Este comando vai criar a estrutura que precisaremos, e modificaremos, para nosso novo aplicativo. Para testar digite: http://localhost/ts na barra de endereços do Chrome (Firefox? Safari?) Você deverá ver os três pontinhos tradicionais e um aplicativo exatamente igual ao que criamos aqui.

Pimba? Funcionou? Se não, você pode começar novamente leia este artigo, depois este, e por fim este aqui. Se seguir todos os passos a coisa deve funcionar. Se não funcionar… ouvi dizer que algumas religiões tem um período de aceitação bem curto. Rezar pode ser uma solução.

A estrutura criada aqui é a mesma que criamos durante a instalação, precisaremos renomear os arquivos principais e criar a estrutura de arquivos que modificaremos. Renomeie. Você pode precisar de algum dos arquivos originais para consulta.

 

No Diretório

Renomeie

Para

ts/

app.js

app_orig.js

ts/app/view

main.js

main_orig.js

 

Se você recarregar a página http://localhost/ts ficará vendo os três pontinhos característicos ad aeternum. Isto acontece porquê o arquivo index.html que existe na raiz, carrega os scripts necessários a execução dos aplicativo mas não encontra a classe representada no arquivo app.js, que neste momento, não existe.

Vamos criar este arquivo. Abra seu editor preferido, crie o arquivo app.js na past ts/ e copie e cole o seguinte código:

     Ext.application({
         name: "Teste",

         launch: function () {
                console.log("Este aplicativo está rodando");
       }
});

Observe que o atributo name deve conter o nome do aplicativo que estamos criando. Preste atenção nos caracteres, maiúsculos e minúsculos. Isto é fundamental.

Recarregue a pagina no navegador. Você continuará vendo os três pontinhos. Considerando que está usando o Chrome, clique com o botão direito em qualquer lugar da página, e clique em Inspecionar elemento. Você verá a janela de debug web do Chrome. Clique no botão console e verá a mensagem Este aplicativo está rodando impressa no console.

Observe que no meu caso o acento de está não saiu corretamente impresso. O editor que estou usando adotou o character set padrão do Windows, quando eu criei o arquivo app.js e meu servidor web, o Apache, está usando o padrão UTF-8. Para impedir erros como este, configure seu editor para utilizar o padrão UTF-8.

A mensagem de texto foi escrita no console pelo comando:

console.log(“Este aplicativo está rodando”);

Esta é uma linha de comando que você pode utilizar para um debug manual, de pobre, mas eventualmente muito útil.  No nosso caso, prova que, apesar de ainda estarmos vendo os três pontinhos, nosso aplicativo já rodou.

Vamos criar uma view com uma barra de ferramentas e colocar um botão nesta barra. Para isso crie no diretório view um arquivo chamado ViewUm.js e copie o seguinte código nele:

Ext.define("Teste.view.ViewUm", {
       extend: "Ext.Container",
           config: {
                 items: [{
                        xtype: "toolbar",
                        docked: "top",
                        title: "Minha Tela",
                        items: [{
                               xtype: "spacer"
                               }, {
                                  xtype: "button",
                                  text: "Novo",
                                  ui: "action",
                                  id:"novo-btn"
                                  }]
                               }]
                         }
            });

Se você recarregar o arquivo http://localhost/tsnão verá nenhuma alteração. Isto por que esta view ainda não foi carregada pelo arquivo app.js mas, antes de carregar vamos dar uma olhada, linha a linha, no código desta ViewUm.js

A primeira linha explicita a variável Ext o singleton responsável por todo namespace dos aplicativos criados com a biblioteca Sencha Tools. O método define recebe os argumentos referentes a definição de uma classe que representará seu aplicativo.

defineString className, Object data, Function createdFn )

No caso, className, um string, tem o formato aplicativo.modulo.classe  para este aplicativo “Teste.view.ViewUm”. Observe que o nome da classe é o mesmo nome do arquivo javascript que criamos. Observe também que o segundo argumento do método define, data, começa na primeira linha com a { e termina na última com }. Ou, caso ainda não tenha percebido, toda a definição da classe está feita no argumento data do método define. Uau!!!

A primeira coisa que fazemos na classe é dizer que ela estende a classe “Ext.Container”. A classe que estamos definindo, “Teste.view.ViewUm”, herdará as características da classe, “Ext.Container”. Esta última, uma classe do namespace Ext que herda as características da classe “Ext.Component”, responsável pela maior parte dos componentes visuais da biblioteca Sencha Touch com a propriedade extra de permitir a colocação de componentes no seu interior. Ou, em outras palavras, a classe que estendemos “Ext.Container” define um componente visual que pode conter outros componentes visuais.

Em seguida instanciamos o objeto config, responsável pela configuração da classe e passamos todos os atributos de configuração. Neste caso apenas o objeto array Items que contém um conjunto de componentes, configurações ou instancias. Como visto a seguir:

     items: [{
           xtype: "toolbar",
           docked: "top",
           title: "Minha Tela",
           items: [{
                 xtype: "spacer"
                 }, {
                    xtype: "button",
                    text: "Novo",
                    ui: "action",
                    id:"novo-btn"
                    }]
                 }]

Como visto acima, este array items contém um e somente um objeto, do tipo toolbar, definido pelo comando xtype, com os atributos docked, title e items. Por sua vez,  este último objeto array items contém os objetos que serão contidos pelo item “toolbar” que foi inserido na classe “Teste.view.ViewUm” que estende a classe “Ext.Container” que estamos definindo. Ou seja, temos um contêiner contendo uma barra de ferramentas que contém um botão. Uau!!!

Mas, ainda assim, se você recarregar a página no navegador, não verá nada. Temos que incluir esta classe no app.js. Para isso vamos mudar o código do arquivo app.js para incluir a classe, seu novo código deve ser:

Ext.application({
       name: "Teste",
       views: ["ViewUm"],

       launch: function () {
          var viewum = Ext.create("Teste.view.ViewUm");
          Ext.Viewport.add(viewum);
       }
});

Uma vez que o app.js tenha sido salvo, recarregue a página no navegador e voilà!!! Lá se foi meu francês. Você deverá ver alguma coisa parecida com:

Observe o título desagradavelmente reduzido e com reticências (ou ellipsis em inglês). Este efeito parece ser um defeito, este problema não aparece no Firefox. Se este problema lhe incomodar, você poderá modificar o arquivo app.css que se encontra na pasta ts/resources/css/app.css e remover a propriedade overflow:hidden da classe x-title. Isto resolverá o problema.

O importante, que precisa ser notado, no novo app.js é o atributo views:  um array que contém o nome, string, de todas as classes do módulo view que desejamos inserir no aplicativo e a instância do objeto ViewUm dentro da function launch.

Amanhã, continuamos.

Por incrível que pareça, alguns dos meus alunos no curso de desenvolvimento móvel da Faculdade Spei, em Curitiba, usam linux. Especificamente Ubuntu. Ainda me lembro quando contávamos em uma mão as pessoas que usavam linux e sobrava dedo. Bons tempos…

Como nostalgia não instala software e alguns estão tendo algumas dificuldades, este artigo vai detalhar o processo de instalação das bibliotecas Sencha em uma máquina rodando Ubuntu.

Antes de começarmos, um pequeno esclarecimento: Não uso a interface Unity do Ubuntu. Nem sob tortura. Dito isto, se você ver alguma coisa diferente nas capturas de tela, sinto muito, estou no meio da personalização do meu Ubuntu.

Instalando o Apache

Se você está acompanhando esta série de artigos já sabe que vamos precisar de um servidor web. Usamos o Apache 2.0 no Windows 7 e usaremos este mesmo servidor no Ubuntu. Você não precisa mas, como é fácil e eu tenho sinceras esperanças que você se torne um desenvolvedor web, além de desenvolvedor móvel, vamos instalar também o PHP e o MySql, deixando sua máquina pronta tanto para mobile quanto para web usando o PHP.

Abra uma janela de terminal. Eu uso o Gnome Terminal mas você pode usar qualquer um que deseje ou esteja instalado. E vá ao seu diretório Home. Vamos instalar os aplicativos usando a linha de comando, não que eu goste disso, mas é mais rápido, simples e limpo. Uma vez que o terminal esteja aberto digite:

sudo apt-get update
sudo apt-get upgrade

Depois do primeiro vocẽ precisará digitar sua senha. Estes comandos vão atualizar sua máquina. Depois que a atualização terminar digite :

sudo apt-get install mysql-server mysql-client apache2 php5 libapache2-mod-php5

Responda s a pergunta que aparecerá no terminal e esta linhazinha discreta e tão simpática vai instalar uns 30 e tantos megabytes de arquivos e quando terminar você terá o Apache, php e mysql rodando na sua máquina. Algumas interações serão necessárias, como mostrado a seguir, você precisará digitar uma senha para administrar o MySql, duas vezes. Algumas coisas, ainda que estúpidas, nunca mudam.

instalação do mysql no ubuntu 12.04

Quando terminar digite:

sudo /etc/init.d/apache2 restart

O Apache será reiniciado e emitirá uma mensagem de erro:

Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

Não se preocupe com isso, simplesmente indica que você não configurou um nome para seu servidor. Abra seu navegador (chrome ou firefox) e digite: http://localhost você deverá ver uma página, como mostrado abaixo, indicando que o apache funcionou.
Fim da instalação do Apache 2.0 no Ubuntu 12.04
Se não ver esta página nem a mensagem It Works! talvez seja uma boa hora para fazer uma avaliação sobre as implicações filosóficas do suicídio.

Instalando as bibliotecas Sencha Touch

Para baixar as bibliotecas da Sencha, clique neste link e faça o download da versão GPL no seu diretório Home. São 52 megabytes, demora um tantinho. Vamos dar uma chance para o ambiente gráfico. Quando acabar, abra o Nautilus, navegue até o seu diretório Home, clique com o botão direito e clique em Extrair Aqui. Quando a extração terminar renomeie a pasta criada para sencha. Ninguém merece o nome que os desenvolvedores deram.

Agora você precisa mover esta pasta para o diretório de documentos do Apache. Para tal, vamos voltar ao terminal, no diretório onde você criou a pasta sencha  e digitar:

sudo mv sencha /var/www/sencha

Volte ao seu navegador (Chrome?, Firefox?) e digite: http://localhost/sencha . Se você fez tudo certo verá a página de documentação da biblioteca sencha, como pode ser visto na figura a seguir. Se não deu certo? Você pode começar a ler novamente desde “Parece incrível…” Mantenha-se calmo e lembre-se estudar direito, ou medicina, pode ser uma boa opção.

Página de documentação do Sencha Touch no Ubuntu

Instalando o Java

Não é confuso? Ainda precisamos do java mesmo para um ambiente de desenvolvimento em Javascript para HTML e CSS. Deve ser uma forma da natureza fazer a humanidade pagar pelos seus pecados. Em fim, vamos ter que instalar o java para pode usar uma o kit de desenvolvimento da Sencha. Desde de que a Oracle assumiu o controle acionário da Sun a coisa não está tão simples mas, sempre tem um jeito. Digite:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

Instalando o Kit de desenvolvimento Sencha

Ainda falta uma coisa. A Sencha fornece um kit de desenvolvimento com ferramentas para facilitar sua vida. Entre outras coisas, com ferramentas para criar a estrutura de um aplicativo e para empacotar seu aplicativo para o dispositivo móvel escolhido. Estas ferramentas estão disponíveis em Download Sencha SDK Tools. clique no link, escolha a versão compatível com o seu sistema operacional e baixe.

Não existe uma rotina de instalação padrão linux para este aplicativo. A Sencha fornece um aplicativo em formato de executável. Eu prefiro rodar este aplicativo a partir da linha de comando. Então, estando no diretório onde fez o download digite:

chmod +x SenchaSDKTools-2.0.0-beta3-linux.run
su
./SenchaSDKTools-2.0.0-beta3-linux.run

Agora você está no modo de instalação gráfica deste aplicativo, em linhas gerais, tudo o que precisará fazer é seguir as instruções das janelas de instalação e clicar Next. Ok, você terá que aceitar a licença também. Por fim, seu navegador padrão irá abrir a página contendo o manual destes aplicativos.

Sencha Tools SDK instalado no Ubuntu

Achou que tinha acabado? Ainda não, temos que corrigir o path do Ubuntu, o instalador alterou o bashrc por conta própria, agora você precisa “rodar” este arquivo. Existem várias formas de fazer isso. Você poder fazer um  Logout/login ou fechar/reabrir a janela do terminal.

Uma das duas deve dar certo. Feito isso vá ao diretório /var/www/sencha e digite sencha. Você verá as opções disponíveis para este aplicativo e, agora está acabado.

Para gerar seu primeiro aplicativo, ainda no diretório /var/www/sencha digite:


sencha generate app -p ../gs -n 'start'

E visite http://localhost/gs você deverá ver a tela do aplicativo padrão.

E o seu funcionou? Precisa de ajuda? Grite!!!

Vimos como instalar a biblioteca Secha Touch 2.0 e suas ferramentas de desenvolvimento. Vimos também como criar seu primeiro aplicativo. Tudo isso em um único artigo que serviu de base para a primeira aula de desenvolvimento do curso de desenvolvimento móvel da Faculdade Spei.

Neste artigo vamos dar uma olhada rápida na arquitetura da biblioteca Sencha Touch 2.0. Antes de começar vamos deixar claro uma coisa: Esta arquitetura, apesar de incrível, não é MVC. Eu sei lá existe um M de model, onde você colocará as classes de modelo, há um C de controller, onde você colocará as classes de controle e lógica e há até um V de view onde ficará sua interface mas, as semelhanças acabam ai. Esta arquitetura é própria e particular e chamá-la de MVC é menosprezar este trabalho.

A imagem ao lado, retirada próprio site da Sencha, mostra a arquitetura do ponto de vista modular e deixa claro que tudo está relacionado ao módulo APP.

interessante desenvolvimento móvel com arquitetura sencha touch 2.0

Todos os módulos são relacionados através do módulo Application e, além do MVC tradicional temos o Profile e o Store.

  • Models: Ou modelos são as classes de abstração de dados;
  • Views: São as classes responsáveis pelo visual e pela interação com o usuário;
  • Controllers: Respondem a comandos do usuário, executam a lógica de negócio;
  • Stores: Classes responsáveis pelo armazenamento de dados usadas por componentes como Components like Lists e DataViews;
  • Profiles: Permitem a criação de visualizações diferentes para dispositivos diferentes de forma simples.

Criando aplicativos móveis com o sencha touch 2.0

Além disso, estes módulos estão organizados em uma estrutura de pastas e arquivos específica, ainda que complexa, e eficiente.

Observe que há uma pasta raiz, GS e abaixo dela as três pastas principais app, resources e sdk. Observe também que todos os aplicativos que você criar com esta biblioteca terá esta estrutura então você só precisará se preocupar com ela uma vez. Não esqueça que você não precisa decorar este treco todo. Como vimos antes, existe um aplicativo só para criar esta estrutura.

Os nomes das pastas são, para lá de autoexplicativos. Você, por acaso, tem alguma dúvida sobre o que deve ficar em uma pasta chamada icons? Ou images?

Há uma pasta que merece atenção: a raiz. No nosso caso, a pasta GS. Existem algums arquivos interessantes lá. O mais importante é o app.js.

Este arquivo define o aplicativo. Define o namespace, as classes que serão incluídas, os recursos que serão utilizados e é o arquivo que será executado para rodar seu aplicativo.


Ext.application({
 name: 'Sencha',

launch: function() {
 var vermelho = {
 style: "background-color: #ff1111; color:white;",
 title: "Vermelho",
 html: "O que eu colocar aqui será impresso na página"
 };

Ext.create('Ext.Carousel',{
 fullscreen: true,
 direction: 'vertical',

 items:[vermelho]
 });
 }
});

Vá lá, abra o seu em algum editor de textos, verá que não tem nenhuma relação com este código acima. Fiz de propósito. Este aqui é mais simples tem a definição do namespace do seu aplicativo (nome:) e a função de inicialização do seu aplicativo (launch: function() {…) estes dois itens serão comuns a todas as aplicações. O resto é pouco, quase nada, só para testar.
Experiemente usar este código substituindo o código gerado automaticamente e ver o que acontece. Já vou adiantando, não é grande coisa e o carrousel não vai funcionar corretamente. Sabe por quê?
Os modelos, controllers, views, profiles e stores são todos itens da classe application. Você faz referência a estes módulos simplesmente colocando seus nomes, em um array, como pode ser visto neste código de exemplo tirado das páginas da Sencha:

Ext.application({
    name: 'MyApp',
    models: ['User', 'Product', 'nested.Order'],
    views: ['OrderList', 'OrderDetail', 'Main'],
    controllers: ['Orders'],

    launch: function() {
        Ext.create('MyApp.view.Main');
    }
});

E cada um destes módulos deve ter seu próprio arquivo js na pasta correta. Uma última observação. Isto aí é javascript. Cuidados com as letras maiúsculas e minúsculas, com as aspas simples e duplas e, acima de tudo, observe que argumentos e itens são separados por vírgulas e funções por ponto e vírgula. Uau!

Desenvolver aplicativos móveis está cada vez mais parecido com desenvolver aplicativos para web. As capacidades estendidas do Html5 e do css 3 acrescidas das funcionalidades do javascript e da criatividade dos desenvolvedores tornam esta uma das melhores, senão a melhor, opção para o desenvolvimento.

Neste tutorial vamos ver o passo a passo da instalação de uma grande biblioteca para desenvolvimento móvel, multiplataforma, usando o html5, o css3 e o javascritp. Esta é a sua última chance. Este artigo fala de desenvolvimento móvel, no Android, usando o Sencha Tools, rodando o Apache no Windows 7. Se não é isso que está procurando. Boa viagem!

Antes de qualquer coisa, é bom ter um servidor web instalado. Eu gosto de utilizar o Apache, grátis, de código aberto, leve, estável e com muito suporte disponível na internet. Como minha máquina não é usada apenas para desenvolvimento web sempre instalo o Apache usando o Xampp. Se precisa de um tutorial para instalar o Xampp pode encontrar um neste link.

Vá lá, não tenha pressa. Eu espero!

Instalando as bibliotecas Sencha

Uma vez que seu Apache esteja instalado, podemos começar a festa. Ops! Quase esqueci. Você vai precisar também de um navegador web capaz de rodar Html5 e Css3 use o Chrome ou o Firefox. Existem outros mas, eu só vou poder ajudá-lo com um destes dois. Os outros são excelentes mas eu não os uso com frequência.

Usaremos as bibliotecas da Sencha. Andei pesquisando esta coisa e resolvi adotar este conjunto de bibliotecas por sua simplicidade, facilidade de uso e versatilidade. Vamos adotar esta biblioteca no curso de desenvolvimento móvel que estou lecionando na Faculdade Spei. Então, ao longo deste semestre, vou escrever muito sobre desenvolvimento móvel por aqui. Ossos do ofício.

Primeiro você deve baixar dois arquivos que são indispensáveis. São eles:

Sencha Tools 2.0 SDK

Sencha SDK Tools

O primeiro é o SDK, kit de desenvolvimento contendo as bibliotecas necessárias para o desenvolvimento. Baixe a versão GPL para poder distribuir seu código sob a mesma licença e não ter problemas de licenciamento. Se pretende vender, ou distribuir seu aplicativo sem distribuir o código, terá que baixar a licença comercial. Você pode usar a versão comercial gratuitamente mas, não pode, em hipótese alguma distribuir seu aplicativo ou o código que produzir utilizado a licença comercial gratuita.

O segundo é um instalador do Windows em formato .exe que instalará uma série de aplicativos úteis para a produção na sua máquina.

Vamos começar instalando o Sencha Tools 2.0 SDk. Este é um arquivo Zip. Simplesmente dê um clique duplo sobre o arquivo, abra-o e copie a pasta que ele contém, sencha-touch-2.0.1.1, para o diretório htdocs do seu Apache. Se você seguiu as instruções de instalação ao pé da letra esta diretório deve estar em C:/xampp/htdocs. Uma vez que a pasta tenha sido copiada renomeie esta pasta para algo mais agradável como sencha, por exemplo. sencha-touch-2.0.1.1 ninguém merece. Nem aluno.

Abra o Xampp Control Panel, mostrado a seguir, clique no botão Start ao lado do Apache para iniciar o servidor e digite http://localhost/sencha na barra de endereços do seu navegador.

Se tudo deu certo, o seu navegador abrirá a página de documentação da biblioteca Sencha, como mostrado a seguir:

Preparando seu primeiro aplicativo sencha

Agora dê um clique duplo sobre o arquivo SenchaSDKTools-2.0.0-beta3-windows.exe para instalar as ferramentas de desenvolvimento, empacotamento e distribuição que acompanham a bibilioteca de desenvolvimento.

A primeira coisa que você verá é a janela de segurança do Windows 7. Este aplicativo da Sencha não está registrado na Microsoft. Esta janela, mostrada a seguir é para garantir que você sabe o que está fazendo. Clique em Sim.

A primeira tela é a tela de apresentação da instalação. Clique em Next.

A segunda tela é a tela da licença. Selecione a opção I accept the agreement e depois em Next.

A terceira tela, mostrada a seguir, permite que você escolha onde instalar as ferramentas de desenvolvimento. Se quiser selecione um lugar. Se não precisar fazer isso então clique em Next.

Selecionando onde instalar as ferramentas Sencha

A seguir, clique em Next nas duas janelas que virão para iniciar a instalação. E aguarde alguns segundos.

Quando clicar em Finish, na última tela, você terá a opção de ver a documentação dos programas instalados para suporte ao desenvolvimento e seus comandos. Se entender inglês perca alguns minutos para ler esta página. Este conhecimento fará diferença no futuro.

Seu primeiro aplicativo

Agora vamos criar seu primeiro aplicativo. Observe que os aplicativos baseados na biblioteca Sencha rodam sobre um estilo arquitetônico específico, sobre uma estrutura especial de diretórios. Sabendo disso os desenvolvedores se deram ao trabalho de criar um aplicativo específico para criar esta estrutura.

A primeira coisa que você precisa fazer é testar sua instalação. Faça o seguinte. Sabe a tecla Window, aquela tecla horrível com o logo do Windows? Pressione a dita cuja junto com a tecla R. As duas ao mesmo tempo.  Você verá a janela especial para rodar programas mostrada a seguir. Digite  CMD e tecle entrer.

Executando o CMD na janela do Windows

Nada c0mo voltar a linha de comando. Tela preta, letras brancas, comandos idiotas. Quanta saudade. Até parece o século XX. Em fim, estando aqui, navegue até a pasta onde estão as bibliotecas Sencha no diretório de documentos do Apache ou, se você seguiu minhas instruções, o diretório C:/xampp/htdocs/sencha. Está muito enferrujado? Tente:

cd c:/xampp/htdocs/sencha

e depois:

sencha

Se estiver tudo certo com a sua instalação verá alguma coisa parecida com]:

Rodando o Sencha tools no Windows 7

Se não foi isso que você viu, nem algo parecido com isso, esta é uma boa oportunidade para procurar uma religião. Ou, caso seja uma pessoa sem fé, apagar tudo e começar a ler novamente lá em “Desenvolver aplicativos móveis…” você esqueceu alguma coisa.

Considerando que está em dia com seus deuses e tudo correu bem. Precisamos agora criar a estrutura de um novo aplicativo, copiar todas as bibliotecas da Sencha para lá e criar o esqueleto de um aplicativo com as classes necessárias. O pessoal da Sencha percebeu que as bibliotecas deles são ótimas e que a estrutura dos aplicativos é um horror e resolveu criar um pequeno facilitador.  Um comando para o o aplicativo sencha que tira todo o trabalho das nossas, já tão suadas, costas. Ainda na linha de comando digite:

sencha generate app -p ../GS -n GetStarted 

Eu sei, você digitou o enter no final. Tudo bem.  Vamos só dar uma olhada nesta linha de comando. A palavra sencha é o aplicativo da Sencha (Santa criatividade!) a palavra generate significa gerar, a palavra app significa aplicativo. O -p seguido dos dois pontinhos .. dizem ao aplicativo para ir ao diretório superior, o GS é a abreviação de Get Started e o nome da pasta que você vai criar. O -n GetStarted determina o nome do seu aplicativo.

Para verificar digite http://localhost/GS na barra de endereços do seu navegador preferido. Qualquer um, desde que seja o Chrome ou o Firefox. Você deverá ver uma página web com a seguinte imagem:

Rodando o seu primeiro aplicativo móvel na sua máquina com Sencha

Uau! Você conseguiu rodar seu primeiro aplicativo móvel com uma das mais modernas tecnologias disponíveis, no seu desktop, em menos de duas horas.

Uau!. Gente educada não pergunta o que vai fazer com isso nem faz referência a lugares pouco iluminados do corpo humano. Gente educada espera o próximo artigo para aprender como a coisa funciona e começar a modificar este aplicativo, ou navega no seu próprio aplicativo e descobre onde está o vídeo, em inglês, com praticamente as mesmas instruções que seguiu até agora, no aplicativo que acabou de criar.

A sua instalação funcionou? Não? O que achou? Posso ajudar?

 

 

 

 

 

 

A Amazon está com uma promoção interessante. Um ano da instância micro do seu serviço EC2 gratuita para novos clientes. Uma excelente oportunidade para criar um servidor minecraft para meu filho e seus amigos e para testar este serviço de hospedagem nas nuvens.

A instância micro parece ser suficiente para dois ou três usuários simultâneos no Minecraft. Neste tutorial vamos passar o passo a passo da configuração do serviço EC2 para aproveitar esta oportunidade. Algumas premissas importantes:

  • Este passo-a-passo assume que sua máquina está com o Windows 7 instalado;
  • Assume também que você vai instalar uma máquina Ubuntu 12 no EC2;
  • Assume também que você já tem a conta na Amazon.

Se qualquer uma destas premissas não for verdadeira, esta é uma boa hora para você procurar outra página.

Criando a instância EC2 na AWS

Acesse sua conta na Amazon Web Services (Aws). Se navegue até o EC2 Dashboard e clique no botão Launch Instance, como mostrado no fragmento de página a seguir:Começando a instalar um máquina na Amazon AWS

Na página seguinte você deverá escolher o processo de instalação. Assumindo que esta é a sua primeira vez, precisamos ser delicados então escolha Classic Wizard e clique em Continue.

Na página seguinte você precisará escolher a imagem que usará. As máquinas marcadas com uma estrela estão disponíveis para a Micro Instace, precisamos instalar uma máquina virtual que atenda esta condição para ter o serviço gratuito. Eu escolhi o Ubuntu Server 12.04 LTS 64 bits como você pode ver no fragmento a seguir:

Determinando a imagem que você usará como seu servidor minecraft

No próximo passo você deverá selecionar o tamanho do seu servidor. Certifique-se de escolher o tamanho do seu servidor. Não erre aqui. Ainda que a Amazon seja conhecida pela qualidade do seu atendimento ao cliente, a oferta de gratuidade por um ano só é válida para instâncias micro então certifique-se de escolher este tamanho, como mostrado no fragmento de página a seguir:

Selecionando o tamanho da máquina que vai rodar o Minecraft Server

Clique no botão Continue.

Na próxima página estão opções avançadas. Nenhuma delas fará diferença no seu servidor. Então simplesmente clique Continue.

O passo seguinte permite que você crie Tags para identificar sua máquina. Isto é interessante para quando você tiver centenas de máquinas rodando na Amazon. Não é o que você quer agora? Não se preocupe, treine, crie uma tag e atribua um valor, como pode ser visto no fragmento a seguir e clique em Continue.

Estas tags servem apenas para você identificar seu servidor

Neste passo você precisará prestar um pouco de atenção. Aqui você vai criar o par de chaves de segurança que serão utilizadas para administrar seu servidor. Observe o fragmento de página a seguir:

Criando as chaves de segurança para administrar seu servidor minecraft

No primeiro campo você deve digitar o nome que suas chaves terão. Este nome serve para identificar a sua chave no seu servidor. Lembre-se esta é uma chave de segurança. Clique no botão “Create & Download your key pair” e salve esta chave em algum lugar seguro da sua máquina. Mais tarde ela será importante. Sem ela será impossível administrar seu servidor. Uma vez que o download termine, clique em Continue.

Não ache que acabou. Agora teremos que lidar com o firewall da Amazon. As regras de acesso são regras dentro do que a Amazon chama de Security Group. Você precisará ter, no mínimo, duas regras. Uma para acesso SSH e outro para acessar o seu servidor Minecraft. Gente velha e paranoica tem o hábito de não usar a porta 22 para o SSH, se for paranoico, troque. O servidor Minecraft precisará da porta 25565 que também pode ser trocada. Neste caso, você terá que trocar esta porta nas configurações do servidor Minecraft também. Se não for paranoico, você pode repetir as configurações que estão no fragmento a seguir:

Criando as regras de acesso para sua máquina na Amazon

Digite um nome para seu grupo de segurança em Group Name e uma descrição em Group Description. Digite 25565 em Port Range e clique em Add Rule e  depois em Continue.

Na página seguinte você verá um resumo da sua máquina. Eu sei você não aguenta mais então clique em Launch.

O próximo passo é criar e aplicar um endereço ip para a sua máquina. Você usará este ip para acessar seu servidor e jogar Minecraft. Na tela de Dashboad do EC2, aquela primeira, procure a seguinte área:

Determinando o ip que será usado pelo servidor minecraft

Clique em Elastic IP, você está vendo 1 na minha figura mas, a sua deve estar com um 0. Você verá uma tela com um botão Allocate New Address. Clique neste botão para abrir a janela de alocação de ip como visto a seguir:

Alocando o IP do seu servidor Minecraft

Deixe eu dar uma dica: Clique no botão Yes, Allocate. Mas, não fique feliz, existe um passo a mais. Muito importante, você precisa associar o ip que alocou a sua máquina. Clique no ip para abrir a janela de alocação, como mostrado a seguir e clique em Yes, Associate. Viu só? É aqui que você vai errar. Eu esqueci de dizer para selecionar sua instância, na caixa de seleção instance.

Associando o IP ao seu servidor Minecraft

Criou o ip? Associou? Agora anote este número ele será necessário.

Acessando o Servidor

Esta foi a parte fácil. A parte difícil começa agora. Você deverá conectar no servidor Amazon, acessar a linha de comando do Ubuntu via SSH, instalar o Java e rodar o servidor. Acredite rodar o servidor será o mais fácil.

Baixe e instale o Putty. Trata-se de um cliente SSH que abre uma conexão segura com uma máquina. No caso a conexão segura será com a sua máquina Ubuntu EC2 no AWs. A instalação é simples, sem mistério ou segredos. Depois de instalado rode o programa puttygen. A tela a seguir abrirá:

Usando o puttygen para gerar uma chave ssh

Precisamos deste programa porque a chave usada pelo putty não está no mesmo formato que a chave de segurança gerada pela Amazon. Clique em Load. Navegue até o diretório onde salvou a sua chave, abra-a e, depois que o putty a converter salve em um lugar seguro, com um nome que seja simples de localizar. Para salvar clique em Save private key. É claro que você pode alterar os campo Key comment e Key passfrase, depende do seu grau de paranoia. O importante é que salve a chave em um lugar seguro e fácil de achar.

Salvou? Agora rode o Putty. A imagem a seguir mostra a janela do putty:

Congigurando o putty para acessar uma máquina ubuntu na Amazon

Observe que na minha tela já existe uma linha chamada minecraft_server, para criar a sua, digite o ip na caixa Host name (or IP address) o número da porta em port, se não mudou deve ser o 22, o nome da sua sessão em Saved Sessions e clique no botão Save. Espere, isto ainda não basta.

Clique em Data, no lado esquerdo você verá a janela a seguir:

Configurando o putty para acessar o EC2

No campo Auto-login digite a palavra Ubuntu depois clique em Session, no lado esquerdo para voltar a janela principal do Putty e clique no botão Save novamente.

Agora clique em SSH, no lado esquerdo e, logo em seguida em Auth para exibir a seguinte janela:

Configurando a chave ssh que dará acesso ao servidor minecraft

Clique no botão Browse e localize sua chave de segurança. Ainda lembra? Nós usamos o puttygen para converter a chava da Amazon em uma chave que o putty possa usar. Depois de carregar clique novamente em Sessions do lado esquerdo e novamente no botão Save.  Agora sim. Se você fez tudo certo, clique em Open. Uma janela preta, de linha de comando vai aparecer e o processo de login do Ubuntu via SSH será automaticamente executado. Quando ele terminar você terá acesso a linha de comando do Ubuntu, como visto a seguir:

Login Ubuntu do servidor minecraft, ou quase

Uau!!! Se chegou até aqui. Parabéns. Agora vamos a parte final.

Configurando o Ubuntu e instalando o servidor Minecraft

O servidor está configurado de forma que você tenha acesso aos comandos críticos através do comando sudo. Então, não altere esta configuração. Deixe de ser convencido e use o sudo. Como eu não sou convencido, pelo menos não em público, ou por escrito, todos os comandos neste tutorial terão o sudo na frente. Comece atualizando seu servidor. Para isso digite:

sudo apt-get update

Quando terminar teremos que instalar o Java, não é muito fácil, se não for usuário Ubuntu, preste atenção. Primeiro teremos que colocar o repositório WEBUPD8 para baixar os binários originais da Oracle. Digite os seguintes comandos, linha por linha, com um enter no final de cada linha.

sudo add-apt-repository ppa:webupd8team/java

sudo apt-get update

sudo apt-get install oracle-java7-installer

Não demora quase nada. Você verá uma monte de linhas estúpidas em um terminal mais estúpido ainda que, no final, terminará em um cursor piscando. Digite:

java -version

Para ver se o java está corretamente instalado. Se estiver você verá:

java version “1.7.0_06″

Java(TM) SE Runtime Environment (build 1.7.0_06-b24)
Java HotSpot(TM) 64-Bit Server VM (build 23.2-b09, mixed mode)
ubuntu@ip-10-244-137-49:~$ java version “1.7.0_06″

Agora podemos instalar o Minecraft. Para isso digite os seguintes comandos, sempre seguidos de enter:

mkdir minecraft

cd minecraft

wget https://s3.amazonaws.com/MinecraftDownload/launcher/minecraft_server.jar

Agora, tudo o que precisa é rodar o servidor. Use o seguinte comando:

sudo java -Xmx512M -Xms512M -jar minecraft_server.jar nogui

Como será a primeira vez que o servidor irá rodar, ele vai gastar alguns minutos criado as diversas “spawn areas” dá tempo de ir tomar um café. Quando ele terminar. O servidor estará rodando. Use o ip para conectar e bom jogo. Se deixar rodando o servidor estará sempre disponível.

Dúvidas? Críticas? Problemas? Me avise se funcionar.

Se você pretende desenvolver para web, desenvolvendo sites ou aplicativos online, ou para mobile usando como base o HTML5, o CSS3 e o Javascript, você precisará criar um ambiente para desenvolvimento na sua máquina. Estamos enfrentando este problema na classe de Desenvolvimento Móvel da Faculdade Spei em Curitiba.

Precisará, principalmente, de um servidor web. Neste artigo, publico o passo-a-passo da instalação de um dos melhores pacotes base para a criação de um ambiente de desenvolvimento web/mobile. O Xampp. Trata-se de um pacote de softwares desenvolvido pela Apache Friends que contém os aplicativos básicos que você precisará.

Neste artigo mostro a instalação em uma máquina rodando o Windows 7.

  1. Antes de qualquer coisa, você precisa fazer o download.  Este link leva diretamente ao site da Apache Friends  e ao pacote de instalação padrão. Clicando neste link você baixará um arquivo .exe, um executável, que deve ser salvo em um diretório de fácil acesso como o Download ou Desktop.  Observe que algumas empresas não permitem o download e arquivos executáveis então, pode ser que precise baixar o arquivo comprimido.
  2. Uma vez que o arquivo tenha baixado, dê dois cliques sobre ele para iniciar a instalação.  A instalação é simples. Praticamente uma instalação padrão.
  3. A primeira tela pede sua permissão para a instalação. Trata-se apenas de uma proteção do Windows 7. A ideia é garantir que você sabe que o programa que está rodando, programa de instalação irá fazer alterações na sua máquina. Pode ser vista na figura a seguir. Para prosseguir clique em Sim.Primeira janela da instalação do Apache, php e MySql
  4. A segunda tela que você verá é um aviso do pessoal da Apache Friends. Pode ser visto logo abaixo. O Windows 7 incorporou uma rotina de segurança extra chamada de UAC que restringe alguns comandos, alguns diretórios e alguns comandos em alguns diretórios. Parece muito com as rotinas usadas desde o milênio passado no mundo Linux.  O resumo da ópera é: Se você não quer ter problemas de segurança ou acesso, não instale o Xampp em um diretório protegido do Windows. Use, por exemplo, a raiz do drive C. Clique em Ok para continuar.É importante que você se certifique de instalar o xampp no diretório certo
  5. Clique em Next na próxima tela, é a tela de abertura do programa de instalação só serve para créditos e aborrecimentos diversos.
  6. Chegamos finalmente a uma tela interessante. Como pode ser visto a seguir. Nesta tela você deverá escolher o diretório onde instalará o Xamp. Observe que a opção C:\xampp\ está pré-selecionada. Se for a sua primeira vez deixe assim. Se não, escolha um diretório seguro ou onde já esteja acostumado a manter arquivos.É importante instalar o xampp em um diretório seguro ou onde você se sinta confortável
  7. A próxima tela contém algumas opções críticas. Então, preste atenção. A primeira parte diz respeito a criação de ícones. Você pode optar por ter ícones no desktop e no menu iniciar. Eu não uso no Desktop mas isso é questão de gosto.A segunda parte desta tela é mais importante. Observe a figura abaixo.  Existem três caixas de seleção que determinarão se os servidores instalados com o Xampp serão instalados como serviço ou não. Certifique-se que nenhuma destas opções esteja selecionada. A exceção a isso é se você estiver instalando um servidor.

    Se alguma destas opções estiver marcada. Sempre que você ligar sua máquina, estes servidores estarão rodando e comendo recursos e memória. Esteja você desenvolvendo ou não.

    Clique em Install para continuar e aguarde.

  8. Você verá uma tela com uma barra de progresso enquanto seus arquivos estão sendo copiados. Aguarde! Verá também uma ou duas janelas de comando do Windows. Aguarde!  Se tudo correr bem, você verá a última tela da instalação. Clique em Finish. E aguarde. Por fim, você verá uma janela de congratulações:Última tela da instalação do apache, php e mysql

    Esta tela pergunta se você deve rodar o Xampp Control Panel. Clique em Sim.

  9. Você verá o Xampp Control Panel, como mostrado a seguir:Você usará este painel para controlar o Apache, MySql e TomCat

    O Xampp Control Panel é o aplicativo que você usará para controlar os servidores na sua máquina. Clique nos botões Start, ao lado dos servidores que desejar. O php já vem pré instalado e configurado então para desenvolver php inicie os servidores  Apache e MySql.  Faça isso para testar sua instalação também.

Para usar o Xampp

Com os servidores rodando, abra o navegador web de sua preferência. Você pode usar qualquer um. Digite http://localhost e clique enter. Se você é uma destas pessoas com sorte verá a página de seleção de idioma. Clique em português e veja a janela de teste do Xampp.  Pronto, seus servidores estão instalados.

O Apache não roda

Este é o erro mais comum. Você clica no botão start do servidor Apache e nada. Ele não roda. Na maioria absoluta das vezes isto ocorre por que você está com o Skype ligado. O Skype, por padrão, usa a porta tcp/ip número 80. A mesma do Apache. Você pode resolver este problema simplesmente configurando o Skype para não usar esta porta.

Para mudar a porta do Skype, abra o aplicativo, clique em ferramentas no menu, depois em opções, depois em avançado e, finalmente, em conexão. Você verá uma janela com as seguintes opções:

Corrija as opções do skype para rodar o Apache

Certifique-se que a opção usar portas 80 e 443… esteja desmarcada e reinicie o Skype.

A forma como a versão nova do algoritmo de classificação de páginas do Big G está penalizando a existência de conteúdo duplicado ainda está provocando dúvidas. Este fim de semana recebi três e-mails sobre o mesmo tema.

Para ter uma noção melhor do que está acontecendo, precisamos ter algumas coisas em mente. Lembre que o que nos interessa aqui é que nosso conteúdo apareça nos primeiros resultados da serp (página de resultado de busca). E gere muito tráfego e muitos negócios este é o segredo do web marketing.

Conteúdo repetido pode prejudicar seu site

Imagem de: Paloma Gómez

Desde que o Google é Google que ele se baseia na nossa forma de interligar as páginas web para ordenar o resultado da busca. Esta ideia genial tem alguns problemas. O maior deles é que se baseia na integridade humana. Se um grande número de autores criar links de forma artificial, com intuito meramente comercial a qualidade do resultado das buscas cai.  Graças a isso, o Big G, simplesmente não detalha os algoritmos, valores e processos envolvidos na classificação das páginas. Imagine que, sem saber exatamente como é existem tantas técnicas de black hat SEO que dão certo. Se soubéssemos exatamente o que fazer a qualidade dos resultados das buscas seria muito pior do que já é.

O que eles podem dizer, e repetem isso a exaustão, é que a intenção de modificar os algoritmos de classificação é garantir que os autores que não respeitam as regras de publicação, sejam penalizados no resultado das buscas. Ou, em poucas palavras, acabem na página 10. J

Uma das regras de publicação mais importantes é: “Don’t create multiple pages, subdomains, or domains with substantially duplicate content.” Ou, em bom português: Não crie páginas, domínios e subdomínios múltiplos com conteúdo substancialmente duplicado.

Você não pode repetir seu conteúdo entre páginas, domínios ou subdomínios. Esta repetição será penalizada pela versão Penguin do algoritmo de classificação. Como, exatamente, ninguém sabe mas centenas de sites indicaram perda de tráfego. Descartando as técnicas de seo negro ficamos com dois erros muito comuns.

No seu blog

Muitos sites são baseados nas plataformas criadas para blogar. Notadamente, no WordPress. Estas plataformas, para melhorar a interação com os usuários, criam arquivos de histórico e páginas de categorias. Que, em última análise, são apenas endereços diferentes para o mesmo conteúdo.

Você precisa remover estes endereços do Google, indicando ao robô de ele deve ignorar estes endereços. Use, por exemplo, o .htaccess para criar redirecionamentos do tipo 301 (permanente). Ou, se for o WordPress, você pode usar o Yoast WordPress Seo plugin que permite que você especifique exatamente quais áreas do seu site serão indexadas ou não.

Na sua empresa

Não contrate os serviços de copywriter genéricos. Seja específico e exija exclusividade. Um dos meus clientes contratou uma empresa de marketing para adicionar conteúdo no seu site. Esta empresa publicou uma centena de artigos na área de blog do site do cliente. Duas coisas aconteceram: Os artigos, apesar de bem escritos não possuem conteúdo capaz de gerar tráfico. Ninguém se deu ao trabalho de fazer uma análise de palavras chaves, keywords, sobre o tema. Logo, os artigos não geram tráfego. A segunda é mais grave. Estes artigos foram vendidos para dezenas de empresas e estão disponíveis em centenas de endereços web. Além de não gerar tráfego, está penalizando o site do cliente.

Neste caso, a única solução é retrabalhar estes textos para diferenciar o conteúdo, tentar atrair algum tráfego ou, no mínimo parar de ser penalizado. É isso ou tirar o conteúdo do ar.

No Geral

Para evitar este tipo de penalização:

  1. Mantenha uma estrutura de links consistente. Se termina um link com / termine todos assim.
  2. Você deve escolher, de uma vez por todas, se prefere ser indexado como www.depijama.com ou como depijama.com. Se vai usar o www ou não no endereço das páginas do seu site. O .htaccess é um lugar excelente para garantir que todas as páginas do seu site serão indexadas da forma correta.
  3. Use o Webmasters Tools para definir junto ao Google como você prefere ser indexado.
  4. Evite grandes quantidades de texto repetido em todas as páginas. Copyright é um exemplo clássico. Inclua, por exemplo, uma referência, ou texto curto, em todas as páginas e um link para a página onde está o conteúdo completo.
  5. Se seu site, empresa, visa um mercado multinacional , use o domínios de topo de cada país. Use .com para os EUA, .co para o Reino Unido e .com.br para o Brasil, por exemplo.
  6. Minimize o conteúdo similar. Por exemplo, se você têm um site com algum tipo de portfólio com páginas que contém essencialmente o mesmo texto. Tente mixar estas páginas em uma única ou diferencie o conteúdo incluindo informações únicas a cada página.
  7. Não esqueça as versões para impressão. Alguns webmasters usam uma estrutura diferente de endereço para a versão adequada a impressão.

As penalizações

Finalmente uma boa notícia. Ninguém sabe exatamente quais são as penalizações ou se elas realmente existem. O que temos certeza é que como o robô de classificação não tem como saber qual o conteúdo que você gostaria que fosse apresentado nos resultados de buscas e o Google evita ter conteúdos duplicados na serp. O conteúdo que será apresentado pode não ser interessante para você.

Veja o caso do copywriter basta que um único site tenha um pagerank maior que o do meu cliente para que nenhuma das páginas com conteúdo, tão cuidadosamente adquirido, apareça no serp

Então, mesmo que não exista uma penalização oficial, nem automática nem manual, o seu site acaba sendo deslocado para os confins da serp.

Melhores práticas de SEO

Sempre que exista algum conteúdo duplicado, este conteúdo deve ser canonizado. Do ponto de vista do SEO isto quer dizer que as urls devem ser padronizadas e devem ser uniformizadas. As melhores formas de fazer isso são o redirecionamento do tipo 301, as urls canõnicas e o uso dos parâmetros de configuração do Webmaster Tools.

Redirecionamentos 301

Se seu servidor está no Apache, com linux, tudo o que você precisa fazer é incluir uma linha no seu arquivo .htaccess:

redirect 301 /diretorio/antigo_arquivo.htm http://www.lugarnovo.com.br/novo_arquivo.htm

A vantagem do redirecionamento é que se várias páginas com potencial de ranqueamento apontam para uma única página elas transferem parte deste potencial para a página destino.

Urls Canônicas

Uma outra forma interessante e muito valorizada pelo pessoal do Google é o uso da tag  rel=canonical

Esta tag transfere a mesma quantidade de potencial de ranqueamento que o redirecionamento e, frequentemente, é mais simples de ser implementada. Inclua a tag na parte head do seu arquivo html:

<link href=”http://www.seusite.com/versao-canonica/ ” rel=”canonical” />

Isto indica ao Google que a página em que a tag está no head deve ser tratada como uma cópia da página http://www.seusite.com/versao-canonica/ e que todos os links, e métricas de conteúdo devem ser aplicadas a url fornecida.

Parâmetros de configuração do Webmasters Tools

Este é exclusivo do Google, o Webmasters Tools contém uma série de parâmetros de configuração que permitem que você indique diretamente aos algoritmos de busca, como eles devem tratar o seu site, suas páginas e arquivos. Como é exclusivo do Google, estas instruções serão ignoradas por outros sites de buscas, como o Bing, por exemplo.

Para entender isso tudo melhor

Se você sabe inglês, a seguir estão alguns vídeos de Matt Cutts onde ele discute os problemas que podem ser causados por conteúdo duplicado.

A opção follow, ou nofollow está ganhado destaque entre as pessoas que estudam SEO, SEM e web marketing. Na minha última palestra, no WorldCamp Curitiba 2012, parece que a coisa não ficou muito clara. Este artigo retoma o tema, com mais detalhe.

como o nofollow pode afetar sua página

Imagem de: Jerry Reynolds

O atributo rel de um link pode receber o valor nofollow. Isto serve apenas para indicar aos robôs dos sites de busca que eles não devem seguir este link e, consequentemente, não indexar o site apontado através deste link.  Simples assim e só isso.

A quantidade de links que aponta para uma página web e que são apontados por esta página web ainda são importantes no cálculo da posição desta página nos resultados de busca.  A cada página possuí um valor próprio e quando uma página indica a outra, parte do valor da página indicadora é assimilado pela página indicada.

A ideia de colocar o atributo nofollow no link que, originalmente servia apenas para desencorajar os spammers, transformou-se, ao longo do tempo, em uma indicação importante para os robôs dos sites de busca. Não é difícil, basta incluir um rel=”nofollow”  dentro da tag link.

<a href=”http://www.depijama.com/” rel=”nofollow”>DePijama</a>

O Big G gostaria que os pobres autores e webmasters colocassem o nofollow em todos os links vendidos dos seus sites. A intenção é que cada autor, ou webmaster, use sua própria consciência para indicar que links devem ser seguidos pelos robôs. Uma forma de indicar a autoridade e qualidade de uma determinada página. Ou seja, se todos usarem o nofollow corretamente, os links que serão seguidos terão valor intrínseco melhorando a qualidade dos resultados apresentados para cada busca. E viva o Big G!

Como o uso do nofollow é explicito no Google Webmasters Guidelines e o uso inadequado de links pagos, e não marcados, pode implicar em uma penalização manual no ranking do seu site e, decesso contínuo nos resultados provocado pelo Penguin a maior parte dos editores, webmasters, autores e blogueiros em geral está marcando todos os links com o rel=”nofollow” preocupados que estão com o SEO dos seus sites depois do update Penguin. O que não pode ser bom.

Follow, nofollow o que isso causa no meu ranking?

  1. Muitos links com nofollow apontando para o seu site.

Explicitamente, no grupo webmasters central, o pessoal técnico do Google, declara que o número de links com rel=”nofollow” não afeta o pagerank de um site. Simplesmente porque os links com o nofollow são ignorados e não são computados. Faz todo sentido: Se o robô não segue o link, contar para quê.

  1. Muitos links com nofollow nas suas páginas apontando para fora.

Aqui, restam algumas dúvidas. Segundo se diz neste mesmo grupo e na internet em geral, esta situação não causará problema nenhum.

Preocupa-me este número dois.

O Google, desde sempre, de uma forma ou de outra, deu muito valor a sua opinião. Se todo mundo resolver que todos os links tenham nofollow, como o algoritmo irá determinar o valor de cada página? Será que isso preocupa?

Hoje, o percentual de links com rel=”nofollow” é ridículo. Tenho 1000000 de páginas em um banco de dados para avaliações e testes, atualizado nos últimos 10 dias e, nestas páginas não encontro nem 200 links com nofollow. Não são blogs, nem páginas de conteúdo acadêmico mas, dá uma ideia da proporção, já que o Google não divulga estas coisas. De uma forma ou de outra, se a proporção crescer eles terão que adequar os algoritmos de rank para corrigir este problema.

A atitude mais sensata é não colocar o nofollow em todos os links. Simples assim.

Use o seu bom senso e critério. Por exemplo, um link que aponte para a página de um produto, da Wikipédia, de um blog com conteúdo valioso, deve ser valorizado, não use o nofollow e deixe que os robôs saibam que você confia neste conteúdo. Em algum momento esta atitude consciente vai ser valorizada pelos algoritmos de busca e rank.

Se você usa o WordPress, dispõe de vários plug-ins para esta função. Um em especial merece sua atenção NoFollow Link. Trata-se de um plug-in que inclui um botão extra no editor que permite, quando um link é clicado, que o atributo rel=”nofollow” seja incluído automaticamente no dito link. Você pode fazer o download do NoFollow Link ou usar a tela de adicionar novo plug-in do seu blog.

Talvez, mais importante que o nofollow seja os problemas causados pelo conteúdo repetido mas, este fica para uma outra oportunidade.

Trabalhar na internet deve ser uma das atividades profissionais mais difíceis de hoje em dia. A internet é um bicho enorme de 7 cabeças que come tempo. Basta uma pequena distração e lá se vão duas ou três horas sem que você perceba. Para ter sucesso no web marketing primeiro, você precisa matar este bicho. Infelizmente, nenhum de nós é o Hércules mitológico que matou o bicho cortando todas as cabeças com um golpe só. Aqui na realidade chata e maçante não existe esta solução mágica.

Trabalhar efetivamente na internet para ter sucesso no WebMarketing

Imagem de: The Consortium

Não é possível ter sucesso na internet sem web marketing e não é possível fazer web marketing sem trabalhar online. Então, para ter sucesso no web marketing, e vender mais, é preciso trabalhar efetivamente na internet. Parece complicado? Fique tranquilo é complicado mesmo.

Por outro lado, algumas pessoas conseguem trabalhar online efetivamente sem desperdiçar tempo e, de vez enquanto, algumas delas conseguem até vender online. Conversei com várias destas pessoas ao longo dos últimos meses, informalmente, para descobrir como elas conseguem trabalhar efetivamente e ainda ter sucesso fazendo web marketing e dividi o conhecimento adquirido em três artigos. O primeiro, este que você está lendo, contém os 7 primeiros passos para trabalhar efetivamente online

  1. Aprenda a gerenciar seu tempo. Divida o seu dia em tarefas com horário para começar e para terminar. Os horários são fundamentais para o sucesso. Comece na hora marcada e termine na hora marcada mesmo que a tarefa não tenha sido concluída. Faça isso durante uma semana e reavalie seus tempos. Pode ser que a primeira divisão tenha sido muito otimista.  Uma forma inteligente de fazer isso é usar as tecnologias de gestão de projeto para organizar as tarefas do dia. O Asana é o que há de melhor nesta área, não só para gestão de tarefas em grupos mas para você também.
  2. Certifique-se que você é o dono do seu site, conteúdo e dados. Não é raro encontrar empresas na internet que estão desprezando seus maiores ativos. O maior ativo de um site é seu domínio. Invista em um domínio próprio, se é que ainda não tem um. Certifique-se que, a qualquer momento você possa trocar de hospedagem sem perder o domínio, sem perder seus dados e sem perder o design e as funcionalidades do seu site. Em geral, basta manter uma rotina de backup particular e ativa. Não confie no seu provedor para o backup!
  3. Poupe tempo gerenciando suas senhas. Assine um serviço como o Keepass ou 1password e o use o Dropbox. O Dropbox permite que você mantenha seus arquivos sincronizados em várias máquinas em todas as plataformas que consigo pensar e os gerenciadores de senhas, permitirão que você use senhas realmente seguras em todos os sites que frequenta sem que tenha que ficar memorizando senhas. Euzinho uso o 1Password, custou US$59,00 mas valeu a pena. Integrado ao Dropbox, tenho todas a senhas em um lugar seguro e só preciso memorizar uma.
  4. Analise seu analytics. O Google analytics, além de gratuito é uma das mais poderosas ferramentas de avaliação de tráfego disponíveis. Mas, não basta abrir o analytics e ficar olhado para ele. Estabeleça metas e configure o Dashboard para exibir o resultado destas metas. Estabeleça valores e acompanhe estes gráficos.  Certifique-se, principalmente, que o analytics seja seu. Você controle a conta. Se preciso for, crie uma conta no Google só para isso. Um dos meus melhores clientes teve que começar as análises estatísticas todas do zero só porque trocou de agência de web marketing e o histórico da sua empresa ficou com a agência anterior.
  5. Acompanhe o número serp das suas páginas. Não adianta digitar suas palavras chaves no Google e procurar sua página. Cada pesquisa é diferente e os novos algoritmos do Google farão com que sua página esteja melhor colocada para você. Eles levam em consideração, desde o que as pessoas que usam o computador procuram, até onde elas estão no mundo. Então você precisará de um serviço independente para isso. Use, por exemplo o WhatPageOfSearcheIAmOn, o nome é horrível mas o serviço é ótimo. Na opção avançada você pode escolher o google.com.br, por exemplo, e ver os resultados sem influência dos cookies nos seus computadores.
  6. Não espere ou acredite em milagres. Se, qualquer um, lhe prometer sucesso imediato em curto prazo e baixo custo, ignore! Isto é impossível. Web marketing é demorado, trabalhoso e caro. Não existe solução simples, não existe solução ótima e não existe solução barata. Demanda tempo, atenção e dinheiro. Muito mais tempo e atenção que o marketing tradicional e, geralmente, o mesmo investimento. Não basta colocar o site no ar, ele precisa ser acompanhado, testado, modificado, reescrito, testado e repensado constantemente. E, acompanhe pessoalmente. Uma das vantagens do analytics é que cada perfil pode ter vários usuários. Exija ser um dos usuários e acompanhe os resultados.
  7. E, principalmente, apenda a usar o Excel. O Excel é, por excelência, a melhor ferramenta disponível para avaliar dados. Sejam eles de que origem e formato. Aprenda principalmente tabelas dinâmicas e vlookup. Você não imagina o que pode fazer com estas coisas.
a descoberta do boson de higgs e o modelo padrão

Há pouco menos de 100 anos começamos a definir um modelo de como o Universo funciona, a partir das forças básicas e das partículas elementares. Este gigantesco esforço de pesquisa e imaginação parece estar chegando ao seu ápice. A comunidade científica está, há semanas, especulando que no próximo dia 4 de julho os cientistas do Large Hadron Collider anunciarão a observação inequívoca do Boson de Higgs.

a descoberta do boson de higgs e o modelo padrão

Este modelo de funcionamento do Universo, conhecido como modelo padrão, começou a ser desenvolvido no começo do século XX por Rutherford, Einstei, Cury, Dirac, Bohr e tantos outros que fica difícil contar e, ao longo das décadas, foi sendo aprimorado, corrigido e comprovado por dezenas de milhares de experiências e observações. Falta o Boson de Higgs. Previsto pela primeira vez na década de 60 do século XX esta partícula hipotética, se comprovada, explicaria por que e como as outas partículas possuem massa.

Existem duas classes de partículas elementares os bosons e os férmions. Os primeiros caracterizados por obedecerem as leis estatísticas de Bose-Einstein e de serem capazes de serem capazes de ocupar o mesmo lugar no espaço desde que estejam no mesmo nível energético, incluem os fótons e glúos além, é claro, do famoso Boson de Higgs objeto deste artigo.

Nove autores de três diferentes artigos, todos durante a década de 60, explicaram como bosons poderiam, espontaneamente, adquirir massa. São eles: Philip Warren Anderson, François Englert,  Robert BroutPeter HiggsGerald GuralnikC. R. Hagen,  Tom Kibble.  Steven Weinberg e Abdus Salam. Higgs levou a honra de nomear a partícula por ter liderados a criação da teoria que explica o surgimento da massa a partir da energia de duas outras partículas. Este boson que caçamos tão ávidamente explica como o Universo, em um dado momento, foi capaz de criar a massa que percebemos hoje dando origem tanto a matéria quanto a antimatéria. Nada de mais só …. tudo.

Uma vez descoberto, o boson de Higgs selará o modelo padrão e, até onde sabemos hoje, nada mais será necessário para explicar o Universo. Os físicos ficarão exultantes.

Na virada do século XX um professor de uma grande universidade da Alemanha soube que seu mais brilhante aluno resolvera estudar física. Sem hesitar, mandou chamar o aluno e, em um sermão de 20 minutos explicou por que este não deveria desperdiçar seu talento em uma ciência morta como a física. Disse o ilustre professor: Na física, nada mais há para ser descoberto. Tudo se sabe e entende. O aluno brilhante como poucos mas teimoso como uma mula insistiu e acabou por descobrir que o átomo na verdade era formado de partículas menores. Não fosse a teimosia de Rutherford não teríamos hoje a televisão, o microondas e o computador, para citar algumas “modernidades” possíveis graças ao conhecimento do funcionamento da matéria.

Uma vez descoberto, o boson de Higgs selará o modelo padrão e, até onde sabemos hoje, nada mais será necessário para explicar o Universo. Os físicos ficarão exultantes.

Até onde sabemos hoje!

Este framework inclui todas as ferramentas que você precisa para pesquisa científica

Lançada a versão 1.0 do Science to Science, um conjunto de ferramentas, ou framework, em código aberto especificamente desenvolvido para facilitar o acesso aos algoritmos e ferramentas de visualização que são mais utilizados na pesquisa científica.

Este framework inclui todas as ferramentas que você precisa para pesquisa científica

O Sci2 provê um ambiente flexível para a utilização de alguns dos mais notáveis algoritmos para pesquisa e análise de dados. Incluindo Burst Detection, Google PageRank, VxOrd (DrL),  Yahoo! Geocoding entre outros. Suporta análise temporal, geo-espacial, e de redes.

Este release construído com o  CIShell v2.0 (http://cishell.org), disponibiliza documentação online, visualização para daltônicos, um leitor de citações do Google Scholar, a linguagem de programação R, o pacote Gephi para visualização de redes em um conjunto integrado e de fácil utilização.

Baixe o Sci2 v1.0 Agora!

O framework é compatível com qualquer sistema operacional capaz de rodar o Java SE 5 (version 1.5.0) ou mais novo instalado na sua máquina.
ttca

Hoje é o dia das dicas de treinamento. Meu amigo Valmir da TTCA Soluções me enviou um e-mail dando conta que está oferencendo o primeiro curso online de administração do Vtiger.

O Vtiger é uma das melhores, se não a melhor solução de CRM em código aberto. A TTCA, por outro lado, é uma das melhores se não a melhor, consultoria Vtiger no Brasil. A oportunidade de administrar este CRM, online, é imperdível.

A inscrição pode ser realizada aqui.

Certificação IBM na PUC Paraná

Minha professora, Deborah Carvalho, me enviou essa dica para divulgação. Acredite esta é uma grande oportunidade de carreira, especificamente se você está na cidade de Curitiba e no mercado de TI. A seguir está o texto do convite:

Certificações IBM por US$30 na PUCPR dia 24/07/12, inscrições até 9/07/12

A PUCPR, através do programa IBM Smart Professsional, oferece certificações IBM pelo valor promocional de US$30. Não perca esta oportunidade de se certificar e torne-se um profissional “IBM Certified”!

Porque você não pode perder esta oportunidade?
· Porque o custo da grande maioria das certificações de TI é a partir de US$100!
· Porque os profissionais certificados, de acordo com pesquisa do IDC, tem mais chances de conseguir uma boa colocação no mercado e obter maiores salários.
· Porque uma certificação de TI traz benefícios tanto para o profissional, quanto para o empregador, quanto para o cliente, veja os detalhes aqui.

E como você vai estudar para a certificação?
· Reunindo-se com seus colegas que também tem interesse por certificação na Comunidade Smart Professional PUCPR.

E qual certificação eu devo obter?
· Se você já trabalha com alguma tecnologia IBM, busque aqui a certificação1 que procura. Se não, que tal iniciar?

Clique aqui para realizar sua inscrição até 11/09/11, e aguarde o retorno com confirmação do local e horário da prova que será realizada no dia 24/07/12. O pagamento é realizado no momento da prova com cartão de credito internacional, conforme regras Prometric.

A opinião deste humilde blogueiro

Corra! Faça logo!

O mercado exige certificação como fator de seleção. Além de você melhorar seus conhecimentos, imprescindível para passar na prova, melhorará suas chances de seleção para um emprego melhor. A IBM detém algumas tecnologias, e a consequente certificação, decisivas para seu sucesso profissional. O valor cobrado pela certificação muito abaixo do valor cobrado no mercado.

Se eu pudesse sugerir sugiriria SPSS, Cloud Computing, DB2 e Enterprise Content Management. São certificações decisivas para os melhores cargos em TI

 

Nem todo mundo leva higiene e segurança a sério

Pode parecer mentira mas, todo começo e fim de período, pelo menos um dos meus estudantes aparece com esta pergunta: Professor, como faço para baixar programas antivírus grátis? No fim deste artigo está uma lista dos antivírus que eu conheço, confio e uso há muitos anos.

Parece simples para quem está envolvido com a informática o tempo todo mas, a grande verdade é que a maior parte das pessoas ainda se sente desconfortável na frente de um computador. Principalmente quanto tem que instalar alguma coisa.  As pessoas simplesmente não sabem como, ou onde, baixar o programa antivírus e, muito menos, qual é o melhor antivírus. E acabam recorrendo aos piratas de plantão ou aos sobrinhos dos amigos. Aqui em Curitiba, e acredito na sua cidade também, existe uma penca de lojinhas pelos bairros, cuidando das máquinas. De vez em quando uma destas “máquinas bem cuidadas” acaba na minha sala de aula. A última tinha mais 7435 malwares diversos instalados.

Nem todo mundo leva a sério essa coisa de vírus ou malwares em geral. Eu levo. Mesmo sabendo que os programas de antivírus só servem para os vírus de ontem e que não protegerão minha máquina o tempo todo, sempre tenho um ativo.

baixar programas antivírus grátis os melhores selecionados

Imagem de: Esparta

Além da falta de conhecimento generalizada do funcionamento do computador e dos problemas que um software mal intencionado pode causar, ainda temos o jeitinho brasileiro. Um dos meus alunos, em uma palestra de desenvolvimento web, teve a coragem de me  contar que na empresa dele, não só o sistema operacional é pirata como também os antivírus o são. Em fim, tentei explicar mas acho que pouco adiantou. Imagine! Comprar software! Imagine se alguém, algum dia, terá a ideia de distribuir antivírus pirata só para ter acesso a máquina dos outros. Quem pensaria em tamanha barbaridade?

Você não precisa comprar antivírus nem usar soluções alternativas. Tudo o que você precisa fazer é baixar programa antivírus grátis e resolver seu problema de segurança em primeiro nível. Existem alguns antivírus excelentes, totalmente gratuitos disponíveis para download na internet. Ou que, pelo menos, são gratuitos por um ano e requerem apenas que você renove a licença para usar outro ano. A seguir está uma lista dos antivírus que confio e uso há muito tempo. Na minha humilde opinião são os melhores. Mas, isto é só a minha humilde opinião.

No mundo Windows

Para máquinas com sistema operacional original

Use o Microsoft Security Essentials, não consigo imaginar nada melhor.

Para máquinas com problemas de relacionamento social

Ok, você sabe a Microsoft é uma empresa cheia de gente rancorosa que não deixa você baixar o Security Essentials se seu Windows não for original. Neste caso existem empresas especializadas na produção de antivírus, centenas delas. Eu confio nos seguintes produtos:

  1. Avast Free antivírus
  2. Avg Free antivírus

Para empresas de médio e grande porte: Neste caso, tanto o Avast quanto o Avg perdem para a antiguidade. Aqui também antiguidade é posto.

Em caso de empresas de médio e grande porte a melhor solução de antivírus corporativa ainda é fornecida pela Norton. Mas, neste caso, você precisa entender um pouquinho de políticas de rede para adquirir os produtos corretos.

No mundo Linux

Não se engane, o linux também é suscetível a vírus de computador. Já tivemos algumas provas de conceito e as máquinas foram infectadas sem maiores problemas, então proteja-se. Em ordem eu confio mais nestes:

  1. BitDefender (infelizmente não é gratuito)
  2. Avast Free for Linux (dos gratuitos é o que confio mais)
  3. Avg Free for Linux

O ClamAv é um excelente antivírus, querido pela comunidade de software livre e código aberto. Infelizmente não está na lista dos que eu confio. Tive alguns problemas com ele no passado, e confiança é como virgindade, só se perde uma vez.

No mundo móvel

  1. AVG Antivirus
  2. Faça o download do Lookout Security & Antivirus

Aqui, no mundo movél, me limito ao Android, Não tenho experiência com o Windows Phone nem com os dispositivos móveis da Apple. Estes dois que sugeri, um eu uso o outro me foi indicado por um amigo especialista em segurança móvel.

Espero que este artigo ajude a decidir. Os links estão ai, direto na página de download, não deixe de se proteger.

E você tem alguma solução melhor? Confia em outro?

Para os menos frequentes neste bloguinho de esquina, vale lembrar que neste mês de junho de 2012 dias 15 e 16 na faculdade FESP será realizado o WorldCamp Curitiba. Para aqueles mais desavisados ainda basta explicar que o WorldCamp é o encontro da comunidade WordPress.

Nestes encontros serão discutidos tópicos que vão desde o desenvolvimento de blogs até o funcionamento e otimização de blogs para melhor ranqueamento nos sites de busca.

A minha palestra está marcada para o dia 16 de junho às 14:45: Odeio Penguim, uma relação de amor e ódio com o Google. Vou fazer uma análise do algoritmo de ranqueamento do Google, o último update, o tal de Penguim e mostrar algumas técnicas para melhorar a posição do seu blog nos resultados do Google.

Espero que seja interessante.

Dei uma olhada na grade e vou chegar cedo. Acho que todas as palestras vão valer a pena e quem for vai sair do encontro mais qualificado para o sucesso nessa tal de web

A grade está disponível aqui.

Dois novos elementos adicionados a tabela periódica

Finalmente a União Internacional da Química Pura e Aplicada oficializou a entrada de dois novos elementos na tabela periódica o livermórium e flerovium (FLERÓVIO E LIVERMÓRIO). Descobertos no final de 2012 estes dois novos elementos foram, oficialmente anexados a tabela periódica que agora conta com 228 elementos.

Os dois elementos foram criados artificialmente pelo homem esmagando ions de cálcio com 20 prótons contra átomos de curium. Resultando nos ditos elementos.

Notícia Original: Wired

O fleróvio (114, símbolo atômico Fl) foi nomeado em homenagem ao físico russo Georgiy Flerov (1913-1990). Descobridor da fissão espontânea do urânio e fundador  do Laboratório de Reações Nucleares, um dos primeiros na Rússia. Este centro de pesquisas participou da ‘fabricação’ do elemento 114.

O livermório (116, símbolo atômico Lv), por sua vez, foi nomeado em homenagem ao Laboratório Nacional Lawrence Livermore (LLNL, na sigla em inglês) e à cidade de Livermore, na Califórnia. Um grupo de pesquisadores deste laboratório ajudou a fabricar o livermório junto com os russos do Laboratório de Reações Nucleares em Dubna.

Neste mês de junho de 2012, nos dias 15 e 16, acontecerá, na Faculdade Fesp, o WorldCamp Curitiba. Grande evento com grandes palestrantes. Para quem não sabe, o WorldCamp é o encontro de gente inteligente e capacitada que trabalha, desenvolve e divulga o WordPress.

Então, se não tem ideia do que eu estou falando, o WordPress é a plataforma, desenvolvida em php, código aberto, licenciado sob a GPl, onde são desenvolvidos a maior parte dos blogs deste pobre planetinha.

Se o seu negócio é vendas na  web, deve estar no WorldCamp Curitiba. Se seu negócio é desenvolvimento web, deve estar no WorldCamp Curitiba. Se seu negócio são as redes sociais também deve estar no WorldCamp Curitiba.

Se nenhum destes é o seu negócio  vá ao WorldCamp Curitiba só para ver o que está perdendo.

Este ano, entre os grandes palestrantes que se apresentarão está este humilde blogueiro. Muito honrado com a oportunidade de palestrar neste evento e que vai falar sobre SEO e SEM em tempo de Penguin. Espero vocês lá.

Anda! Tá fazendo o que aqui? Clica logo neste link e faz sua inscrição. Quem não for dança!

Como medir o Universo foto do Hubble

De tempos em tempos posto algum artigo sobre um filme, uma animação ou um site sobre o tamanho do universo. Estas coisas me fascinam mostrando o quão insignificantes estes macacos pretensiosos são.

Meu filho, outro dia, me perguntou como sabemos a distância que a Lua está da Terra. Expliquei e mostrei como é possível medir esta distância mesmo estando na Terra e, para ilustrar, apresentei um vídeo com uma cena do Big Bang Theory.

Hoje esbarrei com esta animação do Royal Observatory Greenwich, parte dos eventos relacionados ao transito de Vênus na frente do Sol que ocorrerá nos próximos dias 5 e 6 de Junho.

Explica como conseguimos medir a distância entre galáxias.

Na Antártica, gás metano borbulhando na atmosfera

Um artigo da BBC dá conta da descoberta de centenas de fontes de metano na Antártica. Este metano esteve armazenado no gelo há milhares, talvez milhões de anos, e agora, graças ao aquecimento global está sendo liberado na atmosfera.

Na Antártica, gás metano borbulhando na atmosfera

Por Conanil

Agora, todo mundo junto ….PÂNICO!!!!

Existem centenas de milhões de toneladas de metano de metano congelado no fundo dos oceanos e abaixo das calotas polares. Se lá ficarem nenhum problema teremos. Este gás, 60 vezes mais prejudicial a vida que o carbono pode  ser uma grande fonte de energia ou problema.

Meu medo, já explicado aqui, é que este metano pode desequilibrar nosso sistema e colocar todo o planeta em uma retroalimentação viciosa. Mais metano aumenta a temperatura do planeta, que aquece os oceanos que liberam mais metano que aumenta a temperatura do planeta. Já deu para entender?

Inacreditavelmente ainda existem pessoas, e cientistas, que não conseguem ver o perigo que estamos correndo. Veja, por exemplo, a Rio +20 que corre o risco de ser um encontro de amigos para curtir um chopp, na praia, em um calor do inferno, enquanto o nível do mar sobe.

Ps. O título deste artigo foi sugestão do meu filho, 9 anos, que achou a matéria… :) o inglês dele ainda não está lá estas coias. Mas resolvi deixar assim mesmo…:)

Microsoft lança rede social baseada em buscas

Estou muito impressionado com a nova rede social da Microsoft. A So.cl. Finalmente parece que a Microsoft deu um tiro no lugar certo.

Vamos e convenhamos, do ponto de vista da excitação das massas, a Microsoft parece muito com um aula de frações. Há anos que não surge nada, tirando aquela interface ridícula do Xbox, que chame a atenção das massas. Mesmo dos fanáticos. Não tenho dúvidas que a empresa está caminhando para a estabilidade, crescimento constante, grandes lucros e nenhuma graça. A exceção parece ser esta tal de So.CL

Microsoft lança rede social baseada em buscas

Esta nova rede social da Microsoft lançada sem nenhum alarde. Aliás, não fosse o logo no rodapé da página de settings, não acreditaria que era da Microsoft. Impressiona ao primeiro contato e me me impressionou como poucas. Detesto o Facebook, acho Google+ um saco e, entre Pinterest e Twitter fico com o último só por causa da facilidade de integração com meus aplicativos.

A primeira coisa que notei é uma ausência de gatos. Não vi nenhum. Também não vi nenhum infográfico. Parece um lugar tranquilo onde gente interessante posta coisas interessantes. Se ficar assim vai fechar, todo mundo sabe que o sucesso das redes sociais está justamente nas bobagens sem sentido que se postam todos os dias. Mas, por enquanto parece o paraíso. Você consegue achar artigos sobre … qualquer coisa… sem perder muito tempo e sem ter que ler alguma filosofia de para-choque de caminhão.

O search funciona! Inacreditavelmente melhor que o Bing. Uso uma dúzia de termos de busca tentando encontrar páginas específicas e, imagine o search da So.cl retornou a página certa, ou um artigo que citava a página certa em 10 dos 12 testes entre os para-choque primeiros itens. O Google devolve 11 em 12, o Duckduckgo 10 em 12 e o Bing 7 em 12. Visto daqui esse resultado, ainda que inicial, é impressionante.

O que eu gostei mais foi do sistema de edição de postagem. Funciona assim: Procure alguma coisa, qualquer coisa. Clique no link ofertado e, quando voltar para a página da So.cl lá estará um post prontinho para seus comentários. Clique em outro link e este será adicionado ao seu post. Além disso o sistema oferece automaticamente uma série de imagens para o seu post. Comente e pronto! Lá se vai um artigo bem formatado. Ao que parece, eles estão preocupados com a tal da curação.

Fiquei impressionado. Muito Impressionado. E olhe que, geralmente, acho as coisas que a Microsoft faz entediantes.

Mercado não perdoa estudantes incompetentes

Mercado não perdoa estudantes incompetentes

Foto de: Fotos Gov/Ba

Cara: O índice de reprovação no Brasil

Esta semana, circulou em rádios, televisões e jornais a notícia do maior índice de reprovação no ensino médio, no Brasil, nos últimos 12 anos. Dando conta que este ano a média de reprovação bateu no inacreditável índice de 13%.

Coisa interessante. Mais interessante ainda é perder um segundo para analisar este dado. Uma taxa média de 13% de reprovação no ensino médio implica que tivemos uma taxa média de 87% de aprovação. Oitenta e sete por cento dos alunos do ensino médio foram considerados aptos, e consequentemente aprovados. Oitenta e sete por cento dos nossos alunos estão aptos para o mercado de trabalho, ou universidade. Fantástico.

Coroa: O mercado de trabalho não perdoa

Curiosamente, exatamente no mesmo dia, poucas horas depois, com muito menos alarde e destaque, circulou outra estatística desta feita sobre a reprovação em entrevistas de emprego. Nesta última estatística destacou-se o índice médio de 40% (quarenta por cento) de reprovação. Principalmente por causa do desconhecimento da língua pátria.  Quarenta por cento, em média, de todos os brasileiros  que tentam um emprego são reprovados por não saber ler e escrever corretamente.

Coisa interessante. Mais interessante ainda é perder um segundo para analisar este dado. Prestando atenção apenas no ensino médio, a estatística referente a reprovação dos alunos do ensino médio pelo mercado de trabalho. Trinta e seis por cento.  No mercado de trabalho, trinta e seis por cento dos brasileiros com ensino médio são reprovados por não saberem ler e escrever.

Temos um pequeno problema aqui

Em 2009 o censo indicou que tínhamos 8.280.875  arredondando para baixo, só para raciocinar, considerando uma taxa de evasão de 10% no ensino médio e chegamos ao número mágico de 7 milhões de estudantes. Dos quais a escola oficial aprovou SEIS MILHÕES E NOVENTA MIL ALUNOS e dos quais o mercado reprovou DOIS MILHÕES CENTO E NOVENTA E DOIS MIL E QUATROCENTOS ALUNOS. Ou, para tornar ainda mais claros, em números graúdos dos SEIS MILHÕES que a escola, aprovou, o mercado reprovou DOIS MILHÕES por que eles não sabem ler e escrever direito.

Deixe-me ver se entendi direito: O sistema estudantil do Brasil, aprovou em 2011 DOIS MILHÕES DE ALUNOS SEMIANALFABETOS, e a imprensa está preocupada com os 13% que foram reprovados?

Há momentos em que eu acho que estou na mesa do chá, junto com o Chapeleiro Louco e o Salvador Dali mas ninguém grita cortem-lhe a cabeça. Por onde será que anda a Rainha?

E você? O que acha disto?