Fonte: Youtube – MundoOffBackgrounds

   


O progresso da tecnologia dos smartphones faz com que, cada vez mais, surjam jogos de maior qualidade e mais diferenciados.

Neste domínio, o iPhone, tecnologia da Apple,  é sem dúvida um dos aparelhos melhores e mais bem-sucedidos do mercado. É também um verdadeiro prazer fazer jogos de casino como os slots, roleta o blackjack, com este dispositivo móvel tendo em conta a alta resolução das imagens e os efeitos animados que ele proporciona.  No entanto, o sistema operativo  Android que equipa a maioria dos telemóveis revela-se perfeitamente equiparável em termos de desempenho, sobretudo, se aliado ao sistema Ubuntu que lhes confere o poder de funcionarem como autênticos mini computadores pessoais, tal como o iPhone.

Duas modalidades distintas existem para se jogar em casinos online. Estas, estão naturalmente dependentes das versões disponíveis e do equipamento de que se é detentor. Numa delas basta ao jogador estabelecer apenas uma conexão com o casino selecionado, via online, registar-se e jogar.

A outra requer necessariamente um smartphone da nova geração pelo fato dos casinos online fornecerem software e aplicações que necessitam de ser previamente descarregadas, antes de poderem ser utilizadas. Isto trás alguns inconvenientes, designadamente a necessidade de maior memória para armazenamento, mas também algumas vantagens, entre as quais, a privacidade e maior segurança.

Um problema comum que se levanta à maioria dos dispositivos móveis mas igualmente em vias de vir a ser solucionado por tecnologia bem recente é o problema da autonomia. A durabilidade das baterias depende muito da qualidade do sinal e da quantidade de aplicações instaladas no smartphone entre outros fatores.

Uma vantagem para além da portabilidade, para quem aprecia os jogos de casino, são os bonus disponibilizados pelos diversos operadores de jogos da web. Estes, são de todo o tipo e a toda a hora surge algo de novo e de aliciante nesse capítulo.

Alguns casinos para móveis chegam mesmo a dar ao jogador uma quantia inicial sem qualquer necessidade de depósito.

   


Todos conhecem a ferramenta Google Imagens, com a qual se pode fazer pesquisas por imagens. Para esta tarefa, o Google conta com um crawler (robô) exclusivo para rastrear as imagens de cada página publicada na internet, seu nome é Googlebot-Image. Por isso é muito importante que seja feito um bom trabalho de otimização das imagens nas páginas de um site, pois esse trabalho pode gerar um bom resultado em termos de tráfego para o site.

O Google não usa resultados de imagens apenas da ferramenta Google Imagens, mas também nas pesquisas feitas pelo site de buscas na web (imagem abaixo). Assim como na pesquisa na web, o objetivo do Google para a ferramenta de pesquisa de imagens é oferecer a melhor experiência aos seus usuários, oferecendo os melhores e mais relevantes resultados de pesquisa. Com isso em mente é possível conseguir um bom posicionamento nos resultados dessa ferramenta.

otimizazao-google-images

Vamos ver algumas dicas que podem contribuir com o bom posicionamento das imagens de suas páginas nas pesquisas do Google:

1. Nome dos arquivos de imagens influencia muito em SEO

Os nomes dos arquivos de imagem devem sempre ser detalhados e informativos, de forma que deixe claro para o buscador sobre qual assunto está contido na imagem. Uma boa descrição do nome do arquivo para uma imagem que ficará numa página sobre venda de um produto seria nome-do-produto-a-venda.jpg, que é muito mais informativo do que IMG00123.jpg.

2. Uso da Tag Alt é fundamental

Utilize sempre o atributo da tag alt de forma tão descritiva quando o nome do arquivo. Para o Google a tag alt é usada para descrever os conteúdos de um arquivo de imagem, fornecendo informações muito importantes sobre o que está contido na imagem.

Veja os exemplos de conteúdo adequado para a tag alt de uma imagem indicado pelo Google:

filhotes-dalmata

  • Uso comum: <img src=“filhotes.jpg” alt=”” />
  • Melhor: <img src=”filhotes.jpg” alt=”filhotes” />
  • Muito melhor:<img src=”filhotes-dalmata.jpg” alt=”Filhote de dálmata brincando de pegar” />

E a Tag “title”?

Fazem confusão com o uso da tag Title,. Hoje o Google não gera relevância para essa tag, mas ela tem uma papel fundamental no que se refere a usabilidade do seu site. Por esse motivo você deve dar tanto valor a esta tag quanto a tag alt.

3. Teste sua página na versão texto

Não abuse de palavras-chave dentro do atributo, isso pode fazer com que o seu site seja considerado como spam. O Google recomenda que você teste o seu conteúdo usando um navegador somente de texto, como o Lynx.

4. Relacione sua imagem com conteúdo correto

Fornece um bom contexto para a sua imagem dentro da página na qual esta está inserida possibilita aos buscadores mais informações sobre a imagem, inclua legendas ou títulos e sempre que possível, faça com que as imagens estejam próximas ao texto relevantes a elas.

Veja a forma indicada pelo Google para texto relevante a imagem inserida na página:

seo-imagens

Outro ponto muito importante sobre as imagens é o dimensionamento e tamanho em bytes de uma imagem. Em alguns sites as grandes vilãs da lentidão de uma página são as imagens. Esse assunto será abordado já no próximo tópico sobre o tempo de carregamento das páginas e dentro dele será dada a devida atenção à importância das imagens.

5. Reduzindo o tamanho de imagens

No resultado obtido com a ferramenta Gtmetrix, você terá uma opção de visualizar o tempo de carregamento por arquivo, essa informação é obtida na aba Timeline do Gtmetrix. Você conseguirá visualizar o tamanho e tempo de carregamento para cada arquivo. E como estamos falando de imagens é importante utilizar imagens que sejam do tamanho realmente necessário para o bom entendimento de seus clientes, para que o resultado final da página não seja muito pesada e lenta.

Utilizar ferramentas de compressão de imagens como jpegtran, Jpegoptim, Smush.it do Yahoo! e OptiPNG é o caminho certo para se obter uma boa redução do peso das imagens.

O Google Page Speed também dará boas dicas de como otimizar a página em termos de imagens. Uma das dicas é sempre exibir imagens dimensionadas, isto é editar as imagens para que elas fiquem no tamanho correto no qual você deseja inserir no site, e não usando os atributos de redimensionamento pelo código. O Google também indica que especificar a dimensões (largura e altura) de todas as imagens do site permite uma renderização mais rápida da página.

6. Use CSS Sprites quando possível

Existe também a opção de combinar imagens com CSS Sprites, que também será avaliada pela ferramenta do Google. Aplicar esta técnica é muito aconselhável para websites com muitas imagens em suas páginas.

Utilizar o CSS Sprites é relativamente simples. Para tal, basta unificar todas as imagens da página em uma única nova imagem, como por exemplo, unificar todos os botões de um menu em uma única imagem. Usando o exemplo abaixo fica claro identificar como o CSS Sprites pode ser útil:

uso-css-sprites

Se fôssemos carregar cada imagem desse menu separadamente teríamos seis requisições e 18kb no total. Após a unificação em uma só imagem o tamanho cai para 14kb. Agora imagine isso para mais 10 imagens usadas em uma única página.

O código HTML que vai precisar usar para o exemplo é realmente muito simples, utiliza-se um menu em lista onde será colocada a imagem unificada como background e definir a largura e altura fixa para cada item de menu, com isso aparecerá somente o Sprite correspondente à imagem que será visível:

usando-css-sprites

Criar a propriedade CSS responsável pela mudança dos sprites usando background-position. Com isso será definida em que posição o background será exibido.

1
2
3
4
5
6
7
8
9
#menu li a { background: url(images/sprites.jpg) no-repeat;
 display: block; width: 120px; height: 60px; }
 /* define para cada item a posição em que o sprite está na imagem /*
 #menu li .home { background-position: 0px 0px; }
 #menu li .home:hover { background-position: 0px -60px; }
 #menu li .textos { background-position: 120px 0px; }
 #menu li .textos:hover { background-position: 120px -60px; }
 #menu li .contato { background-position: 240px 0px; }
 #menu li .contato:hover { background-position: 240px -60px; }

7. Seja autêntico – não copie imagens de outros sites

Como eu disse lá no começo, o Google dá muito importância para a relevância da imagem para os usuários, então ele não vai aceitar que você utilize-se de imagens de outros sites, dando assim conteúdo duplicado ao seu visitante.

Por isso, seja autêntico! Ao invés de copiar a imagens de outro site, apenas se inspire nela e crie a sua própria.

Conclusão

Para ter uma melhor ideia do quanto essas dicas são relevantes, procure em seu Google Analytics as informações de quantos são os visitantes que chegam ao seu site através do Google Images, procure em Fontes de Tráfego, você pode se surpreender com o número de visitantes que chegam ao seu site dessa forma.

No Portal Seu Negócio na Internet você vai encontrar dicas bônus para otimização de imagens, como uma dica para criar relatórios personalizados do Google Analytics para acompanhar o tráfego que as imagens geram para suas páginas, além de dicas para quem administra sites WordPress e quer usar plugins para essa tarefa.

Espero que gostem e aproveitem as dicas. Deixem suas dúvidas e comentários.

Fonte: http://imasters.com.br/analytics/7-dicas-para-otimizar-as-imagens-do-seu-site-e-ganhar-mais-trafego/

   


Olá a todos! Backbone 1.0 foi lançado! Aconteceu de eu aparecer pelo site e ver que o 1.0 é oficial, então eu não tenho ideia de quanto tempo ele foi lançado. Por que ninguém me contou??? De qualquer forma, pode haver alguns de vocês querendo saber o que a nova versão traz e como podem atualizar seus aplicativos para ter acesso às novas maravilhas. Bem, vamos dar uma olhada no novo material.

Analisando eventos e limpando-os

A primeira novidade foi principalmente apenas para ajudar a aliviar o problema conhecido como zombie views. Zombie views são views que foram removidas do DOM e supostamente eliminadas, mas ainda ficam em torno da memória, incapazes de serem coletadas pelo coletor de lixo. A razão pela qual elas não podem ser coletadas pelo coletor de lixo é porque estão ouvindo events em outro objeto (como um modelo ou coleção), o que significa que as referências às views foram armazenadas nesses objetos.

Para combater esse problema, Backbone.Events tem alguns novos métodos: listenTo eStopListening. Como Backbone.View herda os métodos de Backbone.Events, agora temos esses dois métodos disponíveis em nossas views. Agora, em vez de escrever o seguinte:

1
this.model.on('event', this.someMethod, this);

…podemos escrever isto:

1
this.listenTo(this.model, 'event', this.someMethod);

…em nossos construtores. Isso nos dá duas coisas:

  • O significado é um pouco mais claro e mostra como nós queremos que o relacionamento seja. Agora, o nome do método indica que estamos ouvindo um evento em vez de um callback ser entregue a um outro objeto para ser chamado quando o evento é acionado. Enquanto isso não realmente muda a forma como o código funciona nos bastidores, esclarece como queremos que os relacionamentos sejam.
  • Quando usamos listenTo, ele armazena os eventos que estamos ouvindo na View também, então agora podemos chamar stopListening e ele vai remover todos os ouvintes de eventos que configuramos via listenTo.

Como mencionado, StopListening é a contrapartida para listenTo. Cada evento que registrarmos via listenTo será cancelado quando chamarmos StopListening. Você também pode especificar quais eventos e callbacks a serem cancelados, assim como usando off no modelo que você está ouvindo. Então, se você só quer parar de ouvir o evento “change” do modelo, você pode chamar:

1
this.stopListening(this.model, 'change');

A melhor parte sobre StopListening é que você não precisa chamá-lo. Quando você chamar remove em uma view, StopListening também será automaticamente chamado. Isso significa que se você quiser dispor de uma view, tudo que você precisa fazer é chamar someView.remove(); (supondo que você não tenha referências à view em outras lugares).

Esse tipo de funcionalidade foi adicionada em várias extensões do Backbone, mas agora vem gratuitamente com bom e velho Backbone. Isso pode significar que se você atualizar a sua versão do Backbone, você vai querer ter certeza de que também atualizou suas extensões para garantir que eles não estão em conflito com essa nova funcionalidade.

Validação de modelo

Nenhuma nova funcionalidade especial foi adicionada aqui, mas alguns padrões e comportamentos mudaram. Primeiro de tudo, por padrão, os modelos não são validados automaticamente quando você chama set. A única vez em que eles são automaticamente validados é quando você chama save. No entanto, você pode validar um modelo quando você chama set passando a opção {validate: true} assim:

1
model.set({'some':'property'}, {validate:true});

A outra grande mudança para a validação é que um evento ‘inválido’ será demitido, em vez de ‘error’, então tenha certeza de que você altere seus ouvintes.

Collection Updates

Nos velhos tempos, quando você chamava fetch em uma collection, ele retiraria todos os seus modelos antigos e apenas inseriria todos os novos que foram recuperados. Agora, vou tentar atualizar a collection adicionando, removendo e mesclando modelos. Além disso, o método update das coleções foi renomeado para set, de forma que se assemelhe ao nome do método do modelo. Esse é o método que o fetch usa para atualizar a collection.

Se você quiser usar a antiga funcionalidade, na qual fetch substituiria todos os modelos atuais, você pode passar a opção {reset: true}.

Route Decoding

Anteriormente, um Backbone.Router deixaria segmentos de URL como era antes de passar os argumentos para os manipuladores de rota, mas agora os segmentos de URL já URL codificada dados em si, os dados serão descodificados antes de passá-la para os manipuladores. Isso deve tornar mais simples para interpretar argumentos do manipulador.

Conclusão

De acordo com os documentos na página do Backbone, essas são as mudanças maiores. Algumas delas são muito boas, e eu estou especialmente empolgado com a primeira, mesmo que eu tenha passado a usar extensões como Marionette. Há várias outras mudanças nas quais você provavelmente vai querer dar uma olhada se estiver usando Backbone 0.9.2 ou anterior, que você pode ver no log de alterações. Todas as versões depois da 0.9.2 são tecnicamente betas para a 1.0, então você vai querer dar uma olhada nas mudanças para cada uma delas. Há uma várias mudanças maiores e características adicionais que você não vai querer perder.

Fonte: http://imasters.com.br/tecnologia/redes-e-servidores/atualizacao-para-backbone-1-0-conheca-algumas-novidades/

   


Durante muito tempo eu vivi esse problema. A sintaxe é fácil, porém não é uma coisa que se faz todo dia- pelo menos não o desenvolvedor e por isso mesmo a gente esquece. Não adianta dizer que é algo que a gente pode ir buscar na internet, ou na documentação. Bom mesmo é ter uma ferramenta que faça o trabalho para você de forma mais automática. Concorda?

Pensando nisso eu desenvolvi um pequeno pacote em php, a princípio somente para minhas necessidades. Trabalho com php há alguns anos e nem por isso foi fácil. Trabalho com Linux também há muitos anos e nem por isso lembrar do que se deve escrever em um arquivo de configuração de hosts é tão fácil assim. Nem tudo é tão instintivo.

O Addhost – como chamo o pacote – é uma simples ferramenta de linha de comando, feito inicialmente para uso em ambiente Linux (não testei em ambiente Windows ou Mac) para que, com alguns parâmetros, eu pudesse criar hosts virtuais na minha máquina em tempo de projeto sem ter que ficar copiando, colando e editando arquivos já configurados para fazer funcionar um novo endereço. O funcionamento dele é bem simples. Vou mostrar para vocês.

Esse pacote foi hospedado inicialmente no github e para fazê-lo funcionar é só baixar o pacote. Estou pensando em submetê-lo ao packagist, porém isso é algo para o futuro. Vamos começar!

Para baixar o pacote basta ir no github.com/evaldobarbosa/addhost e achar o link que dá para o arquivo .zip e colocá-lo em qualquer lugar da sua máquina, descompactá-lo. Lembre-se de que você deve ter permissões de administrador para poder criar novos vhosts! Depois de baixado o pacote é hora de configurar.

O primeiro passo é configurar um pequeno arquivo, o conf.php, na pasta do addhost, para informar o caminho onde os seus vhosts serão criados, o nome do seu usuário, do usuário padrão do apache e também o caminho para o arquivo de hosts, onde o addhost configurará a relação IP/hostname. Outras opções, como linguagem e informações sobre proxy agora também são aceitas. Feito isso, meu caro, mão na massa!

Vá no seu terminal e chame o pacote assim:

$ php addhost.php 127.0.1.1 vhosttest /home/seu_usuario/Projetos/VHostTest

De forma básica você estará configurando um vhost chamado vhosttest que rodará sobre o IP 127.0.1.1 e que apontará para a pasta VhostTest dentro da pasta Projetos, que está dentro da pasta padrão do seu usuário no sistema. Veja que estou usando a sintaxe do Linux, verifique se em outro sistema operacional funciona.

Alguns parâmetros podem ser adicionados à chamada do addhost, deixando mais específica a sua configuração. Você pode adicionar um .htaccess, o download do composer e a criação de um composer.json básico ou mesmo um errorlog para o seu projeto. Tudo nele é feito para facilitar a sua vida. Você pode até remover um vhost já criado!

Os parâmetros que podem ser utilizados estão na lista abaixo com suas respectivas descrições. Dê uma olhada:

  • htaccess: cria um arquivo .htaccess na pasta pública do vhost. Não garante o funcionamento porque ainda não verifica a existência do módulo mod_rewrite;
  • composer: faz o download do composer.phar e cria o composer.json na pasta do projeto. Se você usa proxy, então deve configurar o addhost para que ele possa fazer o serviço;
  • errorlog: cria a diretiva de log de erro na configuração do vhost para que você possa acompanhar os possíveis erros que venha ocorrer enquanto você desenvolve o projeto;
  • removehost: possibilita a remoção do arquivo de configuração do vhost, a retirada do hostname do arquivo de hosts do sistema operacional e também a pasta do projeto.

Se você agora está interessado no projeto, saiba que fico muito animado, porque recebi duas grandes contribuições pelo fórum do site phpclasses.org. Além de tudo, o pacote foi indicado para votação no concurso de inovação promovido pelo próprio site.

O addhost é fruto da necessidade, da minha necessidade, porém resolvi disponibilizá-lo por que sei que muitos passam pelo mesmo problema. Fique livre para utilizar o projeto, forkar e também solicitar modificações, seja pelo github ou pelo fórum do pacote no phpclasses.org.

 

Fonte: http://imasters.com.br/linguagens/php/o-problema-de-criar-novos-virtual-hosts-no-apache-ao-iniciar-um-projeto-foi-resolvido/

   


Promessa feita, promessa cumprida. Conforme a Maçã havia anunciado, a versão final do iOS 7 já se encontra disponível para download, embora apenas para uma lista razoavelmente restrita de aparelhos. Dessa forma, antes de sair à cata do novo SO, confira se o seu aparelho se encontra na lista abaixo:

  • iPhone 4, iPhone 4S, iPhone 5*
  • iPod Touch de 5ª geração.
  • iPad 2, iPad 3, iPad 4 e iPad mini.

* iPhones 5c e 5s sairão de fábrica com o iOS 7

Entretanto, considerando-se o histórico de atualizações de sistema operacional da Apple, é bom pensar duas vezes antes de colocar o novo programa para rodar no seu aparelho relativamente antigo. De fato, não parece impossível que um iPhone 4 ou um iPad 2 apresentem alguma “dificuldade” para rodar o software.

Conselho: faça um backup

 

Não se trata de uma tentativa de agourar a sua atualização, é claro. Até porque, as atualizações de SO da Apple dificilmente dão problema. Entretanto, antes de realizar o processo, não custa nada fazer um backup dos conteúdos do seu aparelho. É possível fazê-lo de duas formas:

  • iCloud: no menu de configurações, vá às opções do iCloud e selecione “Storage & Backup”. Em seguida, ative a caixa “iCloud Backup” (caso esteja desligada), toque em “Back Up Now” e aguarde. Com o processo, uma cópia dos seus dados fica armazenada na nuvem para que sejam resgatados se for necessário. Certifique-se de que você possui uma conexão WiFi estável; e
  • iTunes: Conecte o dispositivo no computador com iTunes instalado e tenha certeza de que sua conta está autorizada no aplicativo. Caso a janela de reprodução automática se abra, será possível importar fotos e vídeos por ali mesmo. Agora abra o aplicativo. Na aba “Summary”, desça até o item “Backups” e selecione a opção “Backup Now”. O armazenamento é feito para o iCloud ou na própria máquina, e pode ser bastante rápido.

Basta seguir com a instalação

 

Após seguir o refrão que diz que “um homem prevenido vale por dois”, basta então seguir com a instalação do iOS 7. Igualmente, há duas formas de concluir o processo:

  • Instalação direta: o iOS 7 é baixado diretamente no seu aparelho. Basta seguir por “Ajustes”, “Geral” e “Atualização de software”. Por fim, basta concordar com os termos e aguardar o término do processo; e
  • Instalação pelo iTunes: será necessário conectar o seu aparelho ao PC. Em seguida, siga por “Resumo” e “Buscar Atualização”. Basta então aceitar os termos e aguardar o término do processo.

Fonte: http://www.tecmundo.com.br/ios/44636-ios-7-apple-libera-a-versao-final-do-sistema-operacional.htm

   


Fonte: Youtube – Estúdio Pirata

   


Fonte: Youtube – 64well

   


Fonte: Youtube – DirectArt

   


Fonte: Youtube – DirectArt