February 2012
1 post
4 tags
Realizando tarefas longas em um servidor de forma...
Fala galera, gostaria de deixar um dica, que particulamente utilizo muito! Sabe quando temos que acessar um servidor via ssh e rodar um script? Então, caso o seu script demore um bom tempo para ser executado, pode acontecer de sua internet cair e abortar todo os processo… Para resolver isso, basta rodar seu script dessa maneira: ./seu_script.sh > log_do_seu_script.txt & Depois...
Feb 8th
December 2011
3 posts
6 tags
Comandos git exageradamente lentos...
Fala galera! Recentemente instalei o git em uma máquina zero bala, até ai tudo bem, porém algo muito estranho estava acontecendo, TODOS os comandos git estavam exageradamente lentos, alguns chegando a demorar cerca de 1 minuto. Se alguém tiver um problema parecido, basta somente configurar algumas variáveis, rodando esses comandos no console: git config --global user.name "Your Name" git config...
Dec 12th
62 notes
6 tags
Precisando ressuscitar o lion?
Fala galera! Não sei se muita gente já passou por isso, sinceramente pensei que nunca passaria, mas foi extremamente irritante. Migrando de um Mac para outro. Recentemente precisei migrar minha aplicações para uma outra máquina. Decidi usar o aplicativo do Mac para isso, o Migration Assistent. O programa é bem tranquilo de usar e foi desenvolvido justamente para essa causa, porém no meu caso...
Dec 11th
23 notes
6 tags
Ordenando documentos embutidos no mongodb
Fala galera! Precisei recentemente fazer um ordenação de um documento embutido no mongodb utilizando a gem mongoid.  Imagine a estrutura a seguir: user.rb class User include Mongoid::Document field :name, :type => String, :index => true embeds_many :lists end list.rb class List include Mongoid::Document field :name, :type => String, :index => true embedded_in :user ...
Dec 2nd
177 notes
September 2011
2 posts
4 tags
Trabalhando com tarefas em background usando o...
Fala galera! Vou escrever um pouquinho sobre um recurso muito bacana e ao mesmo tempo muito importante, que é o de trabalhar com tarefas em background. Cenário Como exemplo para nosso post, iremos adotar o envio de e-mail em massa, ok? Onde o usuário ao clicar em “disparar e-mails” será disparado cerca de 1000 e-mails. NOTA: Não irei abordar a aplicação como um todo, irei focar...
Sep 21st
4 notes
7 tags
Phusion Passenger com várias versões de ruby
Fala galera! Depois de um tempo sumido, estou voltando a escrever! Vamos lá então que já estou atrasado! Recentemente precisei configurar meu servidor de modo que rodasse o passenger com várias versões do ruby. Achei um post muito bacana sobre o assunto, foi nele que me baseei para conseguir colocar tudo para funcionar e nele que me basearei para escrever esse post aqui também. Irei utilizar...
Sep 20th
39 notes
July 2011
11 posts
6 tags
Rvm, Ruby e ImageMagick no Lion
Se você não se conteve e atualizou seu Mac OS X para a nova versão lion antes de seus amigos cobaias, acredito que tenha tido alguns probleminhas com o rvm, ruby e ImageMagick, acertei? Claro que acertei! eu fui uma coabia… :( Para poupar sua navegação ao google, irei facilitar um pouco como resolver esses problemas, vamos lá? OBS: Todo o passo a passo abaixo estarei me baseando que você...
Jul 21st
1 note
7 tags
Chega de "RAILS_ENV=production"!!
rake db:migrate RAILS_ENV=production rails c production Nossa.. como é chato ter que especificar o ambiente de produção a cada comando executado em nosso servidor… Será que podemos fazer algo para automatizar isso? Infelizmente não… teremos que conviver com isso pra sempre… Brincadeira! Sempre tem algo que possamos fazer! E vamos ver agora! Para isso, em nosso servidor de...
Jul 19th
2 notes
5 tags
Criando "alias" para todos os seus projetos de uma...
Essa dica é bem bacana, principalmente para poupar nosso tempo e saco! Toda vez que temos que ir para a pasta de um projeto é a mesma coisa, “cd pasta/pasta_do_projeto/projeto”, fala sério né? muito chato isso… Montei uma pequena função para me ajudar nesse trabalho. Basta colocar o código abaixo dentro do arquivo ”~/.bash_profile” se você estiver no Mac e no...
Jul 18th
11 notes
8 tags
Exibindo o nome da branch atual no terminal
Para quem trabalha com git, sabe que as vezes diante de muitos projetos, fica confuso saber em que branch estamos, precisamos usar o comando git branch -a para nos localizar, certo? Para facilitar esse trabalho, podemos simplesmente exibir o nome da branch no prompt do nosso terminal. Para usuários de Mac, basta adicionar o código abaixo no arquivo ~/.bash_profile, usuários de linux, adicione no...
Jul 18th
7 notes
7 tags
Pesquisando dentro de um array
Saindo uma dica bem fresquinha sobre como pesquisar dentro de um array! Imagine a seguinte situação: @users = User.all(:conditions => ["country = ?", params[:country]]) Imagine que diante do resultado obtido em @users, precisemos filtrar por usuários que morem no Estado do Rio de Janeiro. Sabemos que isso pode ser feito apenas adicionando mais uma condição como a de country ao carregar os...
Jul 14th
211 notes
6 tags
Construindo um sistema de autorização de usuário...
Que tal construir um sistema simples e funcional de autorização de usuários de forma rápida e bem elegante? Lembrando: Quando falamos em autorização, estamos nos referindo as permissões dos usuários, o que cada tipo de usuário pode fazer ou não. Acredito que a maioria das pessoas quando estudou orientação a objetos, teve como exemplo uma classe Cachorro que herda de uma classe Animal, certo?...
Jul 13th
6 tags
Ordenando uma lista a partir de uma tradução -...
Bem, acredito que muitos já passaram por essa situação: Tenho uma tabela de categorias, por exemplo, com apenas os campos id e nome, porém o que é exibido ao usuário será a tradução desse campo nome, que esta definido nos arquivos do I18n, hummm complicado? que nada! A Solução @categories = Category.all.collect{|i| [t(i.name),i.id]}.sort Basta somente varrer cada item, traduzindo e ordenando...
Jul 12th
4 notes
6 tags
NoSql - O que é? Porque usar? Quando usar?
Vídeo NoSQL Databases: What, Why and When - Lorenzo Alberton from PHP UK Conference on Vimeo. Slide da apresentação NoSQL Databases: Why, what and when View more presentations from Lorenzo Alberton
Jul 12th
22 notes
6 tags
Sim! Os "caches" são mágicos!
O problema O que fazer quando nossa aplicação começa a demorar a responder? Otimizar o código? Rever os índices do banco? Aumentar a memória?  Contratar um novo servidor? Escalar minha aplicação? Logicamente todas as opções são válidas, porém existem uma que pode nos surpreender, o uso de caches! O rails possui nativamente esse recurso, porque não usa-lo? Tipos de caches Podemos trabalhar...
Jul 12th
3 notes
3 tags
Find or create by ...
Digamos que queremos procurar um usuário pelo seu e-mail e exibir seu nome, mas se esse usuário não existir, teremos que criá-lo. Uma maneira de fazer isso seria: @user = User.find_by_email("user@email.com") unless @user @user User.create(:email => "user@email.com", :name => "User") end puts @user.name Porém, podemos melhorar usando o find_or_create_by_email: @user =...
Jul 11th
Iniciando o blog mais uma vez
Olá pessoal! Depois de um tempo sem escrever sobre desenvolvimento web, tentarei voltar a escrever. Como o blog anterior os posts ficaram defasados, irei iniciar do zero, sem aproveitar nenhum post. Prefiro criar novos conteúdos do que reaproveitar posts que talvez não funcionem mais como antes. É isso ai! Espero que gostem! Abraços!
Jul 11th