Some tips about Ubuntu 11.04 Natty Narwhal

In April 28th, the Canonical released the version 11.04 (Natty Narwhal) of Ubuntu. On the same day I downloaded it to install on my workstation and I was surprised with Unity UI, the launcher and the dash.

In this post I gathered some tips to customize/adjust it. ;)

For example, if you want to add the Eclipse IDE into your launcher, you need to create a file with “.desktop” extension and add the following content:

1
2
3
4
5
6
7
8
9
10
11
12
#Eclipse.desktop
[Desktop Entry]
Version=3.6
Name=Eclipse
Comment=
Exec=/home/rodrigo/Programs/eclipse/eclipse
StartupWMClass=
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=/home/rodrigo/Programs/eclipse/icon.xpm
StartupNotify=true

Then, drag and drop this file into the launcher.

By default, only a few icons are displayed in the tray. To show all icons, you need to open your terminal and type:

1
gsettings set com.canonical.Unity.Panel systray-whitelist "['all']"

Then, restart Ubuntu.

For it, you need to install the Advanced Desktop Effects Settings (ccsm)

1
sudo apt-get install compizconfig-settings-manager

Then, use Alt+F2 shortcut key to open the “Run a command” dialog, type about:config and run it, change the property Hide Launcher to Never.

Here, you also need install the Advanced Desktop Effects Settings (ccsm).

In the same window you used above, change the property Laucher icon size to another value.

Just type in your terminal:

1
2
3
4
sudo add-apt-repository ppa:alexeftimie/ppa
sudo apt-get update
sudo apt-get install indicator-sysmonitor
indicator-sysmonitor

You can put it (incidator-sysmonitor) in your Startup Application Preferences.

Comments »


Programas úteis para o Mac OS - 2011

No começo de 2009 eu escrevi um post sobre este tema relatando alguns aplicativos que na época eu gostava e agora quase 2 anos depois resolvi (re)escrever um novo post com novos aplicativos que uso quase que diarimente e costumo recomendar.

Desta vez irei apresentar uma lista contendo 13 aplicativos onde alguns substituiram outros aplicativos que eu usava e alguns são novos mesmo.

Fraise: não sei se todos sabem mas o aplicativo opensouce Smultron foi descontinuado (parece que agora ele voltou a ser atualizado e inclusive está a venda na Mac App Store), e isto só não se tornou um perda enorme porque um fork do projeto chamado Fraise apareceu. O Fraise seria algo similar ao notepad++ ou gedit. Simples mas funcional.

Sparrow: no começo eu usava o Mail.app como cliente de emails, depois que centralizei todas as minhas contas de email no GMail passei a utilizar apenas o GMail através do Fluid (escrevi um post sobre isso). Mas agora estou utilizando o Sparrow como cliente de email do GMail e estou gostando da interface simples dele e do seu consumo de memória que é bem menor que a do aplicativo que criei pelo Fluid.

YoruFukurou: Ok, esse nome é péssimo! :D Mas depois de muito tempo utilizando o Tweetie e aguardando atualizações que nunca aconteciam, resolvi testar outros clientes para twitter até que encontrei este e foi o que mais gostei até o momento. E Sim, já testei o Twitter for Mac, mas por enquanto ainda prefiro o YoruFukurou.

Reeder: Um ótimo cliente para Google Reader com uma interface bem elegante.

PS3 Media Server: Esse aqui é para quem tem Playstation 3 e quer compartilhar fotos, músicas e vídeos com o PS3 via rede Wifi ou por cabo mesmo.

Better Touch Tool: Só quem já experimentou o Multi-touch do trackpad de algum Macbook sabe como é. Mas mesmo o trackpad possuindo várias opções de toques e configurações, ainda assim você pode querer criar seus próprios toques e é aí que entra em cena o Better Touch Tool. Com ele você aumenta a quantidade de toques possíveis para o Trackpad, Magic Mouse e Magic Trackpad.

CyberDuck: Um bom cliente de FTP/SFTP. Antes utilizava o FileZilla mas comecei a ter alguns probleminhas com ele e por isso comecei a usar o CyberDuck.

Google Chrome: Usei durante um bom tempo o Safari e gostava bastante, mas passei a usar o Chrome como browser padrão depois que vi alguns recursos como a sincronização de bookmasks e plugins instalados.

Sequential: Se você costuma ler gibi, quadrinhos ou mangá pelo computador, esse aplicativo é para você. ;)

iChm: Leitor de arquivo CHM. Costumo evitar sempre que posso arquivos nesse formato, mas nem sempre é possível.

iStat Menus: Este aplicativo é muito útil, com ele consigo ter várias informações no Menu Bar como: Memória usada/livre, atividade de rede, sensor de temperatura e consumo de cpu.

Time Machine: Só quem já perdeu um ou mais arquivos importantes sabe o quanto fazer backup é necessário e embora este aplicativo já venha instalado por padrão no Mac OS resolvi citá-lo, pois considero a melhor ferramenta de backup que já usei para Mac.

Dropbox: Uma outra ótima opcão de backup, mas online. Além de uma forma simples e rápida de compartilhar arquivos com outros computadores, smartphones e pessoas.

Então é isso, #fikdik desses aplicativos! ;)

Comments »


Como criar um aplicativo do GMail para Mac OS

O Mail.app é um ótimo aplicativo para acessar emails assim como sua integração com o Mac OS, mas eu particularmente tenho preferido utilizar diretamente a interface web do GMail para acessar meus emails (sim, todos meus emails são redirecionados para minha conta do GMail).

Porém o fato de ter que reserver uma aba do browser para o GMail me incomodava e também sentia falta de um ícone no Dock com a quantidade de emails não lidos.

Isso me motivou a procurar uma solução e foi aí que encontrei o aplicativo Fluid.

Com o Fuild, você consegue criar um aplicativo nativo para o Mac (.app) a partir de uma URL qualquer, adicioná-lo ao Dock e até mesmo exibir labels com informações (como a quantidade de emails não lidos do GMail).

Seu uso é bem simples, basta informar uma URL, um nome qualquer, local onde o aplicativo será criado e um ícone (no Google Images existem diversos ícones para GMail ;)).

Uma desvantagem ao usar essa abordagem é que se perde o recurso de pesquisa nos emails via Spotlight, porém raramente precisei usar o spotlight para fazer alguma busca nos meus emails, então não considero um alto preço a se pagar.

Então é isso, fica a dica a todos usuários do GMail e Mac OS! ;)

Comments »


Oracle Certified Enterprise Architect for JEE 5, passei!

Hoje realizei a primeira etapa da certificação Sun Oracle Certified Enterprise Architect for J2EE 5, também conhecida como SCEA 5.

Embora o nome da certificação tenha mudado, o seu conteúdo cobrado na prova continua o mesmo.

A prova em si é bem abrangente com muitas perguntas de enunciados grandes e muitas com duas ou três alternativas corretas para selecionar. Tiveram poucas (3 ou 4) alternativas de drag-and-drop.

Um dos pontos que sempre vejo comentarem é sobre o tempo da prova (02:15) que é pouco e realmente é verdade, quando terminei a prova tive pouco mais de 10 minutos para rever as questões que tinha marcado para revisão.

O material de estudo que utilizei foi:

Não cheguei a fazer nenhum simulado porque a maioria dos que vi era para versão antiga.

Bom, agora vou descansar um pouco e começar a pensar na próxima etapa. :D

Comments »


Desenvolvendo com JRuby e Rails 3

A versão final do Rails 3 foi liberada faz pouco tempo e mesmo assim já tenho visto bastante material demonstrando as novidades dessa versão. Mas particularmente não vi muita coisa demonstrando como utilizar o JRuby com essa nova versão do Rails e isso me motivou a escrever esse post.

Antes de começar efetivamente este post, irei recomendar a leitura do post do Fábio Akita sobre RVM, nesse post ele mostra como instalar, configurar e utilizar o RVM. Eu recomendo muito utilizar o RVM, pois ele facilita bastante o gerenciamento e utilização de várias versões do ruby, rails e gems.

Nesse post irei utilizar as seguintes tecnologias:

** OS: Mac OS 10.6.4/Linux Ubuntu 10.04 RVM: 1.0.1 JRuby: 1.5.2 Rails: 3.0.0 MySQL Server: 5.1.45 **

O exemplo completo do post pode ser visto no github: http://github.com/rlazoti/jruby-on-rails-3-example

Agora voltando ao post, vou começar instalando a versão atual do JRuby disponível no RVM que é a jruby-1.5.2, para instalar esta versão basta executar o comando a seguir (depois de ter instalado o RVM):

1
rvm install jruby

Agora vou definir o JRuby como a versão Ruby corrente no RVM através do comando:

1
rvm use jruby

Feito isso já posso instalar as gems necessárias para desenvolver com o Rails 3, inicialmente vou instalar apenas o Rails, pois as outras gem serão definidas na própria aplicação e instaladas pelo Bundler:

1
gem install rails

Com o MySQL, RVM, JRuby e Rails instalados já tenho um ambiente pronto para iniciar o desenvolvimento da aplicação.

A aplicação será criada quase que da mesma forma que uma aplicação em rails 3, onde informarei o nome da aplicação, qual o banco de dados ela usará e um parâmetro adicional que define o template para criar a aplicação (repare que esse template serve para definir a base da aplicação como JRuby já baseado na versão 3 do framework Rails).

1
rails new contacts -d mysql -m http://jruby.org/rails3.rb

Com o comando executado com sucesso, o passo seguinte é definir as gems que a aplicação precisa para ser executada, a definição das gem é feita no arquivo Gemfile.

1
2
cd contacts
vi Gemfile

O conteúdo do arquivo Gemfile já com as gems necessárias para a aplicação é o seguinte:

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
source 'http://rubygems.org'

gem 'rails', '3.0.0'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

if defined?(JRUBY_VERSION)
  gem 'activerecord-jdbc-adapter'
  gem 'activerecord-jdbcmysql-adapter'
  gem 'jdbc-mysql'
  gem 'jruby-openssl'
  gem 'trinidad'
else
  gem 'mysql2'
end

# Use unicorn as the web server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'ruby-debug'

# Bundle the extra gems:
# gem 'bj'
# gem 'nokogiri'
# gem 'sqlite3-ruby', :require => 'sqlite3'
# gem 'aws-s3', :require => 'aws/s3'

# Bundle gems for the local environment. Make sure to
# put test-only gems in this group so their generators
# and rake tasks are available in development mode:
# group :development, :test do
#   gem 'webrat'
# end

A gem Trinidad serve para rodar a aplicação em uma versão embedded do Apache Tomcat, existe também a possibilidade de usar a gem Warbler que serve para empacotar a aplicação em um arquivo WAR para que posteriormente o deploy seja feito em um web container ou application server java. As outras gem são necessárias para conexão JDBC com o MySQL.

Repare também que o arquivo Gemfile utiliza a variável de ambiente JRUBY_VERSION mas essa variável não é definida pelo RVM, então para que esse arquivo funcione de forma correta é necessário definí-la.

O RVM configura uma variável de ambiente chamada RUBY_VERSION, com isso fica fácil definir a variável que preciso conforme o comando a seguir:

1
JRUBY_VERSION=$RUBY_VERSION

Ok, as gems foram definidas na aplicação mas ainda não foram instaladas. Esta tarefa é feita pelo Bundler utilizando o comando:

1
bundle install

O arquivo config/database.yml contém a configuração com o bando de dados MySQL, e por padrão é definido o usuario root e uma senha vazia. Caso você tenha um usuário ou senha diferente é precisa editar esse arquivo.

Embora o uso de scaffold não seja recomendado, irei utilizá-lo para encurtar o post. O passo seguinte é criar o banco de dados, criar um scaffold para contact e gerar a tabela no MySQL conforme comandos abaixo:

1
2
3
rake db:create
rails g scaffold contact name:string email:string birthdate:date bio:text
rake db:migrate

Pronto! :D A aplicação já pode ser executada e para isso vou usar a gem Trinidad e subir um Tomcat já com a aplicação inclusa.

1
trinidad

Para acessar a aplicação basta abrir a url http://localhost:3000/contacts no browser.

Com isso finalizo esse post que demonstra como utilizar JRuby com Rails 3. ;)

Comments »