Wilker Developer http://wilker-dev.com Most recent posts at Wilker Developer posterous.com Sun, 09 Jan 2011 18:20:00 -0800 WilkerDev Layout 2011 http://wilker-dev.com/wilkerdev-layout-2011 http://wilker-dev.com/wilkerdev-layout-2011

Após uma missão impossível noite trabalhando pra portar o HTML que eu fiz do meu blog pro Posterous, finalmente ta no ar o design novo (que eu desenhei no começo de 2010 XD).

Pelo menos agora é um layout que eu posso chamar de meu :)

Espero que gostem, e espero postar em 2011 muito mais que em 2010!

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Mon, 03 Jan 2011 06:08:00 -0800 Tocando música eletrônica no violão! http://wilker-dev.com/tocando-musica-eletronica-no-violao http://wilker-dev.com/tocando-musica-eletronica-no-violao

Raiden wins!

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Wed, 22 Dec 2010 11:53:50 -0800 HP Store vendendo iPad? O negócio ta mal XD http://wilker-dev.com/hp-store-vendendo-ipad-o-negocio-ta-mal-xd http://wilker-dev.com/hp-store-vendendo-ipad-o-negocio-ta-mal-xd Andando pelo shopping ontem me deparo com a HP Store vendendo iPads XD

Pelo jeito as coisas da HP mesmo não estão vendendo muito bem =p

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Wed, 22 Dec 2010 11:52:54 -0800 Unboxing iPad Case http://wilker-dev.com/unboxing-ipad-case http://wilker-dev.com/unboxing-ipad-case Chego finalmente o case do meu iPad :D

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Mon, 13 Dec 2010 21:59:00 -0800 Vim - Produtividade na Ponta dos Dedos (slides) http://wilker-dev.com/vim-produtividade-na-ponta-dos-dedos-slides http://wilker-dev.com/vim-produtividade-na-ponta-dos-dedos-slides

Segue ai pra quem quizer os slides da palestra que eu fiz no 7 encontro do Frevo on Rails

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Tue, 07 Dec 2010 04:50:00 -0800 Como ter backup automático dos dados de seus programas desktop http://wilker-dev.com/como-ter-backup-automatico-dos-dados-de-seus http://wilker-dev.com/como-ter-backup-automatico-dos-dados-de-seus

Em tempos onde tudo hoje está sendo feito diretamente na web (e como desenvolvedor web, sou a favor disso) nós já estamos bem acostumados a ter nossos dados salvos automaticamente na internet, oque é ótimo, nada de se preocupar com backups ou essas coisas chatas, ter que lembrar de gravar os dados de um monte de aplicativo antes de formatar, e por ai vai...

Mas mesmo assim ainda tem softwares que são preferencialmente usados no Desktop, seja porque a solução funciona melhor que as atuais da web, ou simplesmente por ser mais rápido. Se você já é acostumado a ter os dados salvos na internet, o uso desses programas desktop deve dar um frio na espinha, afinal, os dados estão apenas no seu computador, se pifar alguma coisa já era... Imagina utilizar um gerenciador financeiro desktop, e de um dia pro outro perder 5 anos de histórico de transações devido a uma falha no HD... É um problema.

Bom, mas agora venho com uma solução bem legal para resolver esse problema, uma forma para os dados dos seus softwares desktop serem gravados automaticamente na web, e de quebra você ainda ganha sincronização automática (se você usar um computador em casa e um no trabalho por exemplo).

O segredo desse "truque" está em duas coisas: Dropbox e Links Simbólicos

Se você ainda não tem uma conta do Dropbox, crie, você já deveria ter :)

O Dropbox cria aquela pasta mágica no seu computador onde tudo que é salvo na mesma é automaticamente jogado nos servidores do Dropbox, então a idéia é salvar os dados dos seus aplicativos na pasta do Dropbox. Os softwares funcionam de variadas maneiras então vamos ver os casos. Antes de mais nada crie uma pasta no Dropbox para os dados dos seus aplicativos (eu chamo de "Application Data" aqui). Vamos lá.

Softwares que a pasta dos dados são configuráveis

Esses são os casos mais fáceis, softwares como 1Password ou iFinance que permitem que você escolha onde os dados são salvos, basta selecionar uma pasta no Dropbox e pronto, tudo já vai estar nas nuvens :)

Softwares onde a pasta dos dados não são configuráveis

Aqui é que vem o "pulo do gato". O truque nesses casos é usar links simbólicos de sistema. Os links simbólicos são como apontadores, você cria uma pasta/arquivo que não existe, ele apenas aponta para uma pasta/arquivo em outro lugar. Então, o caso aqui é ter a pasta real no Dropbox e criar um link para ela onde o software tem sua pasta real (parece complicado, mas é simples).

Vamos tomar como exemplo o Address Book do Mac.

A primeira coisa a se fazer é descobrir onde os dados do software estão sendo salvos. No caso do Address Book eles ficam em: "~/Library/Application Support/AddressBook"

De fato, na maior parte dos casos você vai encontrar os dados em "~/Library/Application Support/PROGRAMA"

Agora que sabemos onde ela está, o primeiro passo é fechar o software (se ele estiver aberto), para não correr o risco de alterar os dados no processo.

Vamos usar o Terminal (os comandos a seguir pré-supões que você tenha criado uma pasta chamada Application Data dentro do seu Dropbox):

E é só isso :)

Nos primeiro movemos a pasta para o Dropbox, e então no local onde ela deveria estar, nós criamos um link apontando para a pasta no Dropbox, seu software nem vai notar a diferença, mas agora seus dados estão todos sendo automaticamente salvos no Dropbox :)

Essas técnicas se aplicam também para usuários Linux, para Windows, sorry, vocês não tem links simbólicos =p

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Tue, 30 Nov 2010 08:58:00 -0800 Brincadeira divertida http://wilker-dev.com/brincadeira-divertida http://wilker-dev.com/brincadeira-divertida

Agora é juntar uma graninha e ir brincar dessa parada ai XD

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Tue, 30 Nov 2010 08:57:00 -0800 Beatbox no Google Translator http://wilker-dev.com/beatbox-no-google-translator http://wilker-dev.com/beatbox-no-google-translator

Clique no link e depois em Listen =p

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Thu, 09 Sep 2010 13:54:24 -0700 Sintetizador de audio em JS http://wilker-dev.com/sintetizador-de-audio-em-js http://wilker-dev.com/sintetizador-de-audio-em-js Muita gente ta se focando em estudar a parte gráfica do HTML 5, mas não tem muita gente olhando pro audio, mas alguns estão:

Muito bom esse demo, gerando arquivos wave on fly e fazendo a batida :D
---
Wilker Lúcio
Ruby on Rails Consultant
Bit Zesty
http://www.bitzesty.com
Blog: http://wilker-dev.com
+55 81 87417674

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Mon, 23 Aug 2010 17:15:00 -0700 Restarting server automatic with CoffeeScript (running a Node server) http://wilker-dev.com/restarting-server-automatic-with-coffeescript http://wilker-dev.com/restarting-server-automatic-with-coffeescript

Hi, this script was originally wrote in pure Javascript for Node, I just translated it to CoffeeScript in order to it work with coffeescript directly

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# This file is part of the Spludo Framework.
# Copyright (c) 2009-2010 DracoBlue, http://dracoblue.net/
#
# Licensed under the terms of MIT License. For the full copyright and license
# information, please see the LICENSE file in the root folder.

child_process = require('child_process')
fs = require("fs")
sys = require("sys")

dev_server = {
process: null
files: []
restarting: false

"restart": ->
this.restarting = true;
sys.debug('DEVSERVER: Stopping server for restart');
this.process.kill();

"start": ->
self = this
sys.debug('DEVSERVER: Starting server')
self.watchFiles()

this.process = child_process.spawn("coffee", ['server.coffee'])

this.process.stdout.addListener 'data', (data) ->
process.stdout.write(data)

this.process.stderr.addListener 'data', (data) ->
sys.print(data)

this.process.addListener 'exit', (code) ->
sys.debug('DEVSERVER: Child process exited: ' + code)
this.process = null

if self.restarting
self.restarting = true
self.unwatchFiles()
self.start()

"watchFiles": ->
self = this

child_process.exec 'find . | grep "\.coffee$"', (error, stdout, stderr) ->
files = stdout.trim().split("\n")

files.forEach (file) ->
self.files.push(file)

fs.watchFile file, {interval : 500}, (curr, prev) ->
if curr.mtime.valueOf() != prev.mtime.valueOf() || curr.ctime.valueOf() != prev.ctime.valueOf()
sys.debug('DEVSERVER: Restarting because of changed file at ' + file)
dev_server.restart()

"unwatchFiles": ->
this.files.forEach (file) ->
fs.unwatchFile(file)

this.files = []
}

dev_server.start()

Then just use:

coffee run_dev_server.coffee

note: while this script expects you have a file named server.coffee in same folder, you can easily change the script to fit your needs.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Wed, 28 Jul 2010 22:00:58 -0700 Gordo só faz gordice mermo... http://wilker-dev.com/gordo-so-faz-gordice-mermo http://wilker-dev.com/gordo-so-faz-gordice-mermo

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Mon, 19 Jul 2010 12:55:23 -0700 Copiar não é Roubo http://wilker-dev.com/copiar-nao-e-roubo-0 http://wilker-dev.com/copiar-nao-e-roubo-0

Muito bom!

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Thu, 24 Jun 2010 06:35:37 -0700 10 Demos HTML5 Demos para fazer você esquecer do Flash http://wilker-dev.com/10-demos-html5-demos-para-fazer-voce-esquecer http://wilker-dev.com/10-demos-html5-demos-para-fazer-voce-esquecer

Canvas Minimal Particle Animation

html5 demos

CanvasMol

html5 demos

Flickr and Canvas in 3D

html5 demos

Cloth Simulation

html5 demos

etchaPhysics

html5 demos

Google Images Gift Box – CSS 3D example

html5 demos

Liquid Particles

html5 demos

HTML5 Canvas Nebula

html5 demos

Ball Pool

html5 demos

Bomomo

html5 demos

Fodastico!! :D

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Fri, 11 Jun 2010 11:35:52 -0700 MORTAL KOMBAT 2013 Trailer (Legendado) http://wilker-dev.com/mortal-kombat-2013-trailer-legendado http://wilker-dev.com/mortal-kombat-2013-trailer-legendado

Como os filmes de Mortal Kombat deveriam ser.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Wed, 09 Jun 2010 07:22:47 -0700 Brincadeira de casal http://wilker-dev.com/brincadeira-de-casal http://wilker-dev.com/brincadeira-de-casal

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Tue, 01 Jun 2010 05:40:00 -0700 Basic Http Auth with Devise to protect entire site for staging versions http://wilker-dev.com/basic-http-auth-with-devise-to-protect-entire http://wilker-dev.com/basic-http-auth-with-devise-to-protect-entire

Sometimes you need to stage a client site to he can see it, but some clients are a little neurotic about others seeing their sites before the launch, what is an acceptable behavior. In one job that Im doing I dropped in this case and need to protect entire site from access. It will be easier to do with a clean Rails installation, but Im using Devise, and Devise do some jobs on basic auth, so, it don't play nice at start... The solution was create an extra strategy for Warden, in order to make it do the authentication, after a lot of research and code read I reached a solution, and I'm here sharing it with you :)

At first you need to create the strategy and configure Devise:

After you need to configure your application controller:

And it will make your entire site to be protected with http basic auth.

To make it works I first created a separated scope for this login, otherwise the devise will go crazy, and also I need to created that FakeModel class, because devise always try to serialize/deserialize the record save, to make a record compatible, just need to have an "id" method on instance, and a "find" method in class.

So, if you need to protected your site for staging, this solution will make everyone happy :)

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Tue, 25 May 2010 04:33:49 -0700 Novo endereço do blog http://wilker-dev.com/novo-endereco-do-blog-1 http://wilker-dev.com/novo-endereco-do-blog-1 Tomei vergonha na cara e registrei um dominio pra mim :)

A partir de agora voces podem acessar o blog atravez dos seguintes links:

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Tue, 25 May 2010 01:36:42 -0700 iPad + Velcro = ♥ http://wilker-dev.com/ipad-velcro-22 http://wilker-dev.com/ipad-velcro-22

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Fri, 21 May 2010 11:01:49 -0700 Jogando Pacman na logo do Google http://wilker-dev.com/jogando-pacman-na-logo-do-google http://wilker-dev.com/jogando-pacman-na-logo-do-google Vejam essa página do google:
http://www.google.com/webhp?rls=ig 

Logo em estilo Pacman :D E ainda da pra jogar!!!

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva
Wed, 19 May 2010 12:24:00 -0700 Nginx init.d http://wilker-dev.com/nginx-initd http://wilker-dev.com/nginx-initd

Estou postando aqui meu arquivo de initialização do Nginx em ambientes Unix (nginx instalado via Passenger):

 

http://gist.github.com/406728

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/412558/face1.jpg http://posterous.com/users/3tk3Pn2QGjAJ Wilker Silva wilkerlucio Wilker Silva