sexta-feira, 30 de maio de 2014

Tutorial MapServer - Parte 1

Olá galera,

Hoje daremos início a série de vídeos tutoriais sobre o MapServer. Será necessário ter o Apache e o MapServer instalados. Caso você ainda não os tenha, basta pesquisar sobre a instalação de ambos aqui no blog.

Para o nosso exemplo, será necessário fazer o download do shapefile do mundo. Você pode baixá-lo aqui.

Um grande abraço a todos e até a próxima.

domingo, 25 de maio de 2014

Utilizando recursos unicode em páginas web

Olá galera,

Sempre busco minimizar o uso de imagens nos sistemas que desenvolvo a fim de deixá-los mais leves.

O Bootstrap, por exemplo, utiliza a fonte Glyphicon Halflings para adicionar ícones/imagens como alternativa. Todavia é necessário fazer o carregamento de uma fonte que nem sempre é o que queremos.

Pesquisando na internet sobre o assunto, terminei me deparando com o site Alan Wood’s Unicode resources que contém uma lista de caracteres unicode.

Segue abaixo um exemplo de como utilizá-lo com CSS. O código do emoticon foi obtido aqui.

  <style>
  #emoticon:before {
    content: '\1F60E';
    padding-right: 3px;
  }
  </style>
  <div id="emoticon">Emoticon</div>
  
Emoticon

Acima podemos ver o resultado e mais alguns exemplos a seguir.

Dominó
Sol
Avião

Bem pessoal, fica aí a dica.
Um grande abraço a todos e até a próxima.

sexta-feira, 16 de maio de 2014

Ambiente Ruby 2.1.1 no Ubuntu 14.04 LTS

Olá galera,

Nesse post vamos fazer a instalação do Ruby 2.1.1 que não está, por padrão, disponível no repositório do Ubuntu 14.04 LTS.

No terminal, execute os comandos abaixo.

sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev
sudo apt-get install libgdbm-dev libncurses5-dev automake libtool bison libffi-dev
curl -L https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm
echo "source ~/.rvm/scripts/rvm" >> ~/.bashrc
rvm install 2.1.1
rvm use 2.1.1 --default

Você pode conferir a versão do Ruby instalada através do comando abaixo.

ruby -v

Caso alguém queira instalar o Rails com essa versão do Ruby, será necessário instalar o Node.js.

sudo apt-get install nodejs

Agora é só instalar o Rails.

gem install rails

De forma similar ao Ruby, você pode conferir a versão do Rails através do comando abaixo.

rails -v

Fica aí a nossa dica de hoje.

Um abraço e até a próxima!

domingo, 11 de maio de 2014

Valores nulos com LEFT JOIN e COUNT no MySQL

Olá galera,

Hoje vamos demonstrar como exibir registros cujo valores sejam nulos com LEFT JOIN e COUNT. Adotaremos o modelo hipotético abaixo para exemplificar.

OBS: Recomendo que a visualização do vídeo seja feita em alta resolução, de preferência em HD, por conta dos códigos exibidos.

Um grande abraço a todos e até a próxima.

terça-feira, 6 de maio de 2014

Corrigindo conflito do yield do Laravel 3.2 com PHP 5.5

Olá galera,

O PHP 5.5 trouxe algumas novidades das quais podemos destacar o suporte ao generators. Com isso, o yield passou a se tornar uma palavra reservada e gerou um conflito com o Laravel 3.2.

Quem quiser saber mais informações sobre o yield, pode clicar aqui.

Voltando a correção do conflito, encontrei-a no próprio GitHub do Laravel. Apesar de estar claro quais alterações devem ser feitas, vou replicá-las aqui no blog por segurança.

O trabalho consiste em adicionar "_" (underline ou underscore) antes do yield.

OBS: Conforme já citei em outros posts, recomendo que qualquer alteração seja devidamente comentada e documentada para evitar problemas futuros.

Arquivo: laravel/blade.php linha 364.

* The Blade @yield statement is a shortcut to the Section::_yield method.

Arquivo: laravel/blade.php linha 373.

return preg_replace($pattern, '$1<?php echo \\Laravel\\Section::_yield$2; ?>', $value);

Arquivo: laravel/documentation/views/templating.md linha 47.

<?php echo Section::_yield('scripts'); ?>

Arquivo: laravel/helpers.php linha 563.

function _yield($section)

Arquivo: laravel/helpers.php linha 565.

return Section::_yield($section);

Arquivo: laravel/section.php linha 72.

return static::_yield(static::stop());

Arquivo: laravel/section.php linha 131.

public static function _yield($section)

Arquivo: laravel/tests/cases/blade.test.php linha 81.

$this->assertEquals("<?php echo \\Laravel\\Section::_yield('something'); ?>", Blade::compile_string($blade));

Espero ter ajudado as pessoas que encontraram o mesmo problema.

Um abraço e até próxima.

quinta-feira, 1 de maio de 2014

Rails 4.0.1 com Ruby 2.0

Olá galera,

Já faz quase um ano que publiquei o post Instalando Ruby on Rails 3.2.9 no Ubuntu 12.04 e ainda vejo em alguns fóruns dúvidas sobre qual a melhor forma de fazer a instalação. Alguns usam o RVM (Ruby Version Manager) mas, particulamente, prefiro instalar os pacotes separadamente. Vale lembrar que estou usando o Ubuntu 13.10 para esse tutorial.

No terminal digite:

sudo apt-get install ruby2.0 ruby2.0-dev nodejs

Partindo do príncipio que adoteremos o SQLite, será necessário instalar os pacotes abaixo.

sudo apt-get install sqlite3 libsqlite3-dev sqliteman

OBS: Caso você utilize outro banco, faça a instalação dele antes de criar o projeto. Lembre-se de alterar a gem do banco escolhido no Gemfile.

Com tudo instalado, faça o download da última versão do rubygems no link http://rubygems.org/pages/download. Hoje, a última versão do arquivo é o rubygems-2.1.7.tgz.

Descompacte o arquivo baixado e acesse o seu diretório pelo terminal. Ex: cd /home/meu_usuario/Downloads/rubygems

Após estar dentro do diretório, execute o comando abaixo.

sudo ruby setup.rb

Caso você já tenha instalado uma versão do RubyGems, pode atualizá-lo pelo terminal.

sudo gem update --system

Agora é só instalar o Rails.

sudo gem install rails

Bem prático não concordam?! Caso tenham alguma dúvida é só postar.

Um abraço e até a próxima!

Habilitando o php5-mcrypt no Ubuntu 14.04

Olá galera,

Montei meu ambiente de desenvolvimento no Ubuntu 14.04. Para minha surpresa, após executar o sudo apt-get install php5-mcrypt, a extensão foi instalada conforme a imagem abaixo mas não estava habilitada.

Vamos corrigir o problema criando um link simbólico no diretório /etc/php5/apache2/conf.d.

cd /etc/php5/apache2/conf.d
sudo ln -s ../../mods-available/mcrypt.ini /etc/php5/apache2/conf.d/20-mcrypt.ini

Após executar os comandos acima e darmos um ls -l teremos a imagem abaixo.

sudo php5enmod mcrypt

Reinicie o Apache para que a configuração tenha efeito.

sudo service apache2 restart

Espero que a dica tenha sido útil.

Um grande abraço a todos e até a próxima.