Banner

Home Office

Essa quinta, por motivos de força maior (a.k.a. calor insuportável) resolvi tentar fazer home office. Com os devidos acessos liberados, consegui fazer em casa tudo o que faria no escritório e mais um pouco.

Confesso que no começo foi complicado.

Acordei no mesmo horário de sempre. Ehm... não, mentira, dormi um pouco mais, mas estava no comp no devido horário. Até que fiz algo ligeiramente mais saudável. Fui antes no mercado comprar mantimentos para o dia. Coisa que geralmente não faço.

Assim que sentei no comp, segui a receita de bolo do Dalcico para o acesso à VPN. Foi tranquilo. Não funcionou de primeira. Mas depois foi. Sei lá por quê. Aaanyway...

 

Home Office

Mas obviamente o MEU home office não é bonitão assim não. Abaixo, o original.

My home office

Sim, é essa mesinha ai. Uso como o suporte do monitor uma caixa de quebra cabeças cheia de revistas velhas, encapada e cheia de adesivos. Hightech, huh? Uso também o bom e velho post it. BTW, tem um ali escrito "Pagar Luz". Conta paga.

Para fazer Home Office não é necessário nada muito fancy. Um computador e internet é quase suficiente (claro, se seu trabalho exige contato com pessoas, fica um pouco mais complicado). O mais importante é disciplina. Aí estava meu desafio. Meu comp tem várias séries que eu não tinha assistido ainda, tem TV a cabo, a Galileu tinha acabado de chegar, o tempo estava legal pra tirar fotos. Tudo conspirou contra mim. Mas consegui. =]

O que eu mais gostei foi o silêncio para estudar coisas. Eu estava fazendo um negócio aqui ai algumas dúvidas iam surgindo e o livro que eu precisava estava ali na sala. Foi tão prático. Peguei o livro, deitei no sofá e li... sem calor, sem BARULHO, sem nego passando atrás da minha cadeira e esbarrando, sem ter que ler pdf (odeio livros em pdf com toda a força do meu ser). Foi bem produtivo.

Claro que dei umas escapadas. Mas isso eu faço mesmo no escritório quando a solução de um problema não sai. Às vezes eu vou na copa, pegar um café, um lanchinho, ou abro o Google Reader pra ver as notícias. Aqui eu fui na cozinha e peguei maçãs e pêssegos e comi vendo TV.

Outra vantagem que vi, além de não enfrentar duas horas de trânsito, foi poder ficar de shorts e chinelo. Delícia. Acho que o calor de 30°C com AR CONDICIONADO me traumatizou.

Resumindo, acho que a única desvantagem do home office são as tentações que existem em casa. Mas tudo isso somente se o trabalho não exige pareamento ou interação com outras pessoas, o que é o meu caso no momento.

Não pretendo fazer isso sempre também não. Me senti meio sozinha aqui. Meus "home office" dependerão sempre de duas coisas: tipo do trabalho que estou fazendo e previsão do tempo do INPE.

It's all about location, location, location.

 

Jack of all Trades

Conheci essa expressão essa semana: Jack of all trades, master of none. Traduzindo ficaria uma coisa meio "pau pra toda obra", mas não acho que seja exatamente isso.

O Jack of all trades é aquele cara que sabe várias coisas mas nem uma profundamente. É um ser generalista. E eu me sinto assim às vezes. Gosto de programar, trabalho com isso, mas não posso dizer que sou uma especialista nesta ou naquela linguagem. Estou começando a mexer com fotografia, mas não vejo nenhum aprofundamento futuro. Fiz hipismo, até levei a sério, mas nunca cheguei a me profissionalizar. Falo inglês bem, mas não posso dizer que sou fluente. Estou estudando alemão e francês, mas não acho que eu vá conseguir estudar mais de um ano as duas.

Gosto de ler várias coisas sobre assuntos diferentes, mas sempre que chega no ponto de passar para um nível maior do conhecimento, eu pulo para outra coisa nova. Será que o Jack é uma pessoa que fica facilmente entediada?

Eu sei que eu sou assim.

Mas sinceramente? Assim prefiro.

Muito melhor ficar aberta a conhecer várias coisas novas sempre, mesmo que superficialmente, do que focar a mente em somente uma coisa e não ver o mundo ao redor.

Jack of all trades

 

Restfulie

Essa semana eu resolvi dar uma olhada no plugin Restfulie da Caelum. Depois de ter tentado seguir o tutorial deles do github e não ter dado certo (já que algumas informações estavam faltando), resolvi ler o código do plugin e notei que é muito mais simples do que eu imaginava.

A função do plugin e o porque ele é legal, você pode ler no github mesmo. Aqui só vou mostrar o que eu fiz para realmente entender como a coisa funciona. =]

Acho que a parte mais difícil de um tutorial é criar um exemplo que não seja totalmente imbecil. Não consegui... então vai esse mesmo.

O que eu vou fazer é criar um resource bem “simplão” que simula a instalação de alguma coisa em algum lugar. Tudo o que o meu resource tem é um nome, um servidor e um status. Status. Palavrinha importantíssima que tem que ter, afinal é ela que armazena o estado em que se encontra o seu resource.

Ah, um PS aqui. Vou fazer só o server side. Client side fica pra outra hora.

No caso aqui, o que acontece é o seguinte: Fulaninho vai lá, cria um resource que fica pendente a espera da boa vontade de alguém de instalá-lo. Enquanto pendente, este resource pode também ser cancelado antes da instalação.

Uma vez instalado, este resource pode ser somente suspenso e depois de suspenso ele pode ser ou reativado ou deletado.

Abaixo uma representação dos estados e das transições:

 

Estados:
I. Pendente
II. Cancelado
III. Ativo
IV.Suspenso
V. Deletado

Transições:
1.Cancelar
2.Instalar
3.Suspender
4.Reativar
5.Deletar

Bom, então vamos lá.

Primeiro, criar o projeto e o recurso:

 
rails DB
 ./script/generate scaffold resource nome:string servidor:string status:string 
 rake db:migrate 


Depois instalar o plugin:
 
 script/plugin install git://github.com/caelum/restfulie.git


Se você criar um resource agora e olhar o xml, vai aparecer daquele jeito feio ainda.

Para que o plugin realmente faça o que se propõe é necessário explicitar no controlador a função “to_xml” no método show. O que o plugin faz é sobrescrever este método.

No meu caso, o resources_controller.rb ficou assim:

 
 # GET /resources/1 
 # GET /resources/1.xml 
 def show 
 @resource = Resource.find(params[:id]) 
 
 respond_to do |format| 
 format.html # show.html.erb 
 format.xml  { render :xml => @resource.to_xml(:controller => self, :except => [:created_at, :id, :updated_at]) }
 end 
 end


Mas a mágica do plugin fica no model resource.rb onde deve ser definido o método following_transitions:

 
 def following_transitions 
 transitions = [] 
 transitions << [:show, {}] 
 transitions 
 end


Nesse método serão definidas as transições para cada estado:

 
def following_transitions 
 transitions = [] 
 transitions << [:instalar, {:id => id}] if is_pending? 
 transitions << [:cancelar, {:id => id}] if is_pending? 
 transitions << [:suspender, {:id => id}] if is_installed? 
 transitions << [:reativar, {:action => :instalar, :id => id}] if is_suspended? 
 transitions << [:deletar, {:id => id}] if is_suspended? 
 transitions 
 end

Isso quer dizer que se estiver pendente, o recurso poderá ser cancelado ou instalado, se estiver suspenso, poderá reativado, e por ai vai.

Essas funções “is_pending?”, etc eu criei como forma de controlar as transições. Uma delas ficou assim:

 
def is_pending? 
 status == "pending" 
 end

Bem simples.

Final:

<resource>
<nome>Nome02</nome>
<servidor>Servidor02</servidor>
<status>pending</status>
<atom:link rel="instalar" href="http://localhost:3001/resources/instalar/2"/>
<atom:link rel="cancelar" href="http://localhost:3001/resources/cancelar/2"/>
</resource>

 

Há alguma coisa seriamente errada com o mundo

Sem mais...

 

Drop Dead Diva

Ontem comecei a assistir Drop Dead Diva.

É uma série sobre uma modelo sonsa, loira burra total, a Deb, que morre. Ai tem a gordeenha inteligente, advogada e tudo mais que leva um tiro. A loira vai para o céu e como ela foi um nada a vida inteira, ninguém sabe se ela vai para o céu ou para o inferno. Ela então aperta um botão e volta... para o corpo da advogada Jane.

Quando ela acorda, vê que ainda tem as memórias da Deb, mas o corpo e o cérebro são da Jane.

Os únicos que sabem disso são a melhor amiga da Deb, Stacey (a Kandi de Two and Half Men) e o anjo Fred.

A série é divertida. A Jane além de boa atriz canta muito muito bem. A Stacey também diverte bastante.

Vale a pena.

 

 
More Articles...
To Follow or not
del.icio.us: nurdagniriel Facebook: nurdagniriel Flickr: nurdagniriel LastFM: nurdagniriel MySpace: nurdagniriel Orkut: 6524402225602248237 Picasa: jmourisca Google Reader: 12928185900518312672 Twitter: nurdagnen YouTube: nurdagniriel
News
www.wacken.com: Latest News about W:O:A
Latest News about W:O:A
Who's Online
We have 2 guests online
Rails Summit 2009

Rails Summit 2009