RSSAmplifier

Blog

Blog do Tino Gomes

blog.tinogomes.comRSS feed ↗20 posts

Latest posts

[SHELL] movendo a última linha de um arquivo para o topo

Mais um post para funcionar de memória e não mais ficar buscando como fazer para mover a última linha de um arquivo para o topo. $ sed '1h;1d;$!H;$!d;G' file Referências: Use sed to move last line to top

Metaprogramação em Ruby - Criando métodos de Classe

Nem falo nada sobre quanto tempo sem escrever nada, mas vou contar uma novidade rapidinha: Agora Gaveteiro virou NEI . Mas vamos ao que interessa nesse post. Métodos de Classe? Bom, sabemos que isso não existe em Ruby. Na verdade são métodos singleton da classe, mas enfim, vamos abistrair essa parte. Bom, então, digamos que você vai mapear um recurso de uma API e ela tem um campo/atributo type , e…

Converter JSON para um Objeto Ruby

Quem nunca quis validar um JSON usando as validações do ActiveModel do Rails? Mas transformar um JSON multinível em um objeto Ruby parece ser um passo chato de realizar, né? Bom, hoje eu descobri que não. Exemplo de um JSON bem simples 1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "id" : "740b3e24-8686-48b6-9eb0-1b09d04bf18e" , "name" : "Carl Johnson" , "document" : "12345" , "addresses" : [ { "street" :…

Mais DRY no seu YAML

Olha quem está vivo? Sim, sou eu. Sem mais enrolação. Como já publicado no post do DRY config/database.yml , é possível usar aliases para evitar duplicidade de valores, mas como fazer isso para chaves simples? E porque eu tive essa necessidade? Em uma view onde eu preciso exibir uma mensagem de disponibilidade de expedição de um produto, tenho algo como: app/views/products/show.html 1 2 3 4 5 6…

Usando Git Hook para fazer análise do código

Senta que lá vem história. Atualmente temos algumas ferramentas online, como Code Climate e Codacy , para fazer análise do código do nosso projeto, em busca de falhas de segurança, duplicação de código e etc. Também estamos diante da possibilidade de levantar um servidor de CI , como o jenkins , e configurar para fazer o mesmo processo. Usando essas ferramentas, nossos códigos são avaliados…

[Dicas] Bash - Aprendendo a usar XARGS de uma vez por todas

Depois da milésia vez buscando por como usar o xargs resolvi escrever esse post para não precisar mais. O comando xargs é utilizado para, dado uma lista de argumentos, executar um comando passando essa lista como argumento(s) desse comando. Então, você pode juntar todos os itens da lista para serem passados como argumentos de um comando, ou para que se execute um comando por item da lista. Por…

Novos desafios: Gaveteiro. Obrigado Hotel Urbano

Hoje (30/abril/2015) foi meu último dia no Hotel Urbano (HU) . Muita coisa mudou em menos de um ano, onde era uma empresa que era 100% PHP e hoje trabalha com várias tecnologias, como PHP, Ruby, Python, NodeJS, Scala e Java. Tive o prazer de trabalhar em diversas equipes, com diversas pessoas, tudo gente boa, tanto no pessoal como no profissional. Um obrigado especial ao Bruno que me convidou para…

Criando gemset e arquivos de carregamento do RVM

Essa é mais para ficar para lembrança do que uma dica, mas enfim, sempre que vou começar um novo projeto em Ruby , eu costumo a usar o RVM (sim, ainda o RVM) e gosto de separar os projetos por gemsets (sim, isso também ocupa mais espaço). Para criar um novo gemset, na versão do Ruby correta e os arquivos de carregamento automático, executo o comando abaixo: $ rvm 2.2.1@project_name --create…

[Dicas] Bash - Usando Array e criando arquivos temporários

As dicas abaixo foram extraídas do post 10 tips for writing efficient Bash scripts . Usar Array em lugar de múltiplas variáveis Ao invés de criar muitas variáveis para valores em um mesmo contexto. 1 2 3 4 5 6 color1 = 'Red' color2 = 'Green' color3 = 'Blue' echo $color1 echo $color2 Crie um array. 1 2 3 4 $colors =( 'Red' 'Green' 'Blue' ) echo ${ colors [0] } echo ${ colors [1] } Criar…

Hotel Urbano aí vou eu

Nesta minha última saga em busca de uma nova oportunidade, entre conversas em várias empresas, startups e amigos, minha decisão foi ingressar no Hotel Urbano , a convite do Bruno , onde pessoalmente o grande desafio será a tecnologia, pois a linguagem base usada no HU é PHP e nos últimos 7 anos venho trabalhando com Ruby (ou rãby ?). Também serão outros desafios que no momento não estou habilitado…

Criando branches no git muito mais rápido

Cansei de criar git branches assim: $ git checkout -b fix/some_bugfix_with_long_name Agora é só: $ fix-branch some bugfix with long name Segue abaixo minhas novas funções bash: function fix-branch() { local new_branch_name=$(echo "$*" | tr " " _) git checkout -b fix/$new_branch_name } function feature-branch() { local new_branch_name=$(echo "$*" | tr " " _) git checkout -b feature/$new_branch_name…

Luto por Jim Weirich

Mudei o tema do blog apenas por luto pelo falecimento de Jim Weirich , criador do Rake e outras ferramentas incriveis para Ruby . Também rolou uma homenagem da comunidade no último commit do Jim no github. Descanse em paz e força aos familiares!

Busca em campos de texto passando valores numéricos no MySQL

Como em toda casa de ferreiro, nem sempre o espero é de ferro. Em nosso dia a dia, as vezes precisamos fazer umas intervenções via console do Rails e, com isso, temos alguns métodos auxiliares para fazer tarefas simples, porém rotineiras. Entre essas rotinas, fazemos busca de uma conta através do e-mail de um usuário e então atualizamos a informação necessária. Como as vezes temos somente o e-mail…

Últimas nem tão novidades assim e agradecimentos

Em agosto, minha família e eu, voltamos a morar na Cidade Maravilhosa e desde então, estou trabalhando na Myfreecomm , no produto MyFinance . Com isso, deixamos para trás a Terra da Garoa e muito amigos que vão deixar saudades do convívio diário, principalmente os com espírito Webco , que já espalharam mundo afora. Quero agradecer a toda família Balbino todos que conviveram comigo durante esses 5…

Livro Conhecendo Ruby por TaQ, gratuito mas você pode contribuir

O que é bom, tem que ser divulgado!

DEV in SAMPA 2013 - precisamos do seu feedback

Precisamos do seu feedback, para saber no que podemos melhorar para o próximo DEV in SAMPA. Por favor, acesse http://say2me.com.br/devinsampa e responda ao questionário. Obrigado.

DEV in SAMPA 2013

Para tirar um pouco a poeira do site, segue abaixo um anúncio. Este ano, o DEVinSAMPA vai acontecer dia 18 de maio e as inscrições estão abertas através do site da Eventick . Para ter mais informações sobre a programação, acesse: http://devinsampa.com.br#agenda Não vai ficar de fora!

Testando seu código em várias versões de dependência

ATUALIZAÇÃO 1: Se você, como nós, tem uma gem pública, existe a possibilidade de usar o Travis CI para verificação em várias versões de Rails e Rubies. ATUALIZAÇÃO 2: deve-se usar o comando DO do RVM https://rvm.io/set/do/ Preciso verificar se o Brazilian Rails funciona em várias versões do Rails , 2.3.x, 3.0.x, 3.1.x e 3.2.x e Ruby 1.8.7 e 1.9.x. Como faz? Com RVM , seria: $ rvm…

Como configurar o timezone no Heroku

Basta apenas adicionar uma configuração, em uma variável de ambiente $ heroku config:add TZ=America/Sao_Paulo Adding config vars and restarting app... done, v24 TZ => America/Sao_Paulo $ heroku run console Running console attached to terminal... Time.oup, run.1 Time.now irb(main):001:0> Time.now => 2012-05-14 09:51:51 -0300 A lista de timezones disponíveis está na Wikipedia. Referências:…

Git na porta SSH diferente da padrão

Digamos que por motivo de segurança, resolveram mudar o número da porta SSH e você não consegue mais fazer um simples git pull então, basta adicionar o prefixo do protocolo ssh:// e então adicionar o número da porta. Considerando que a porta agora é 2222. $ git clone ssh://user@git.repo:2222/path/repo.git Referências: http://www.bramschoenmakers.nl/en/node/720

Blog do Tino Gomes · RSS Amplifier