jump to navigation

ajude a fazer o Ubuntu 29/Fev/2008

Posted by Timóteo in Ubuntu.
add a comment

Estava passeando pelo Slashdot, quando vi uma idéia muito legal: O pessoal do Ubuntu tem um sistema de Brainstorming, ou seja, as pessoas dão as idéias e a própria comunidade avalia se a idéia é boa ou não. Daí, você já pode ter até uma idéia de como vai ser a próxima versão da nossa distribuição liveCD favorita. Qualquer um pode sugerir alguma idéia, é só criar uma conta no site.

Referências:

artigo no Slashdot
Ubuntu brainstorm

êêÊêêÊêÊÊê!!!!!!! Dell+Ubuntu no Brasil!!!!!!! 25/Fev/2008

Posted by Timóteo in Sem categoria.
add a comment

A notícia é de sábado, mas eu achei bem legal. Vi no softwarelivre.org que a Dell vai trazer notebooks (Da linha Vostro) com Ubuntu pré-instalado para o Brasil. O site não oferece mais detalhes, mas EU QUERO!!!!!!

Referência: http://www.softwarelivre.org/news/10861

ruby on rails 2.0 iniciando um projeto 19/Fev/2008

Posted by Timóteo in Programação, Ruby, Software livre.
Tags: , ,
2 comments

Voltando a falar do Rails…..

Vou iniciar de novo um projeto de controle de fluxo de alunos no laboratório, usando como base os tutoriais presentes no Terminally Incoherent e no Akita on Rails. Então, vamos lá:

Depois de instalar o ruby, as gemas e o rails (veja aqui como fazer isso), vamos criar o projeto (Nota: é ainda mais fácil do que com o rails 1.2).

criando o projeto e o banco de dados

1. Não mudou nada em relação a criar o projeto. É só digitar (lembrando que o nome do projeto é relatorio):

rails relatorio

[editado]
para definir o mysql como banco de dados do projeto, pode-se colocar a opção

-d mysql

logo após o nome do projeto. No nosso caso, ficaria assim

rails relatorio -d mysql

[/editado]

2. Agora, sim, mudanças… Editar o arquivo config/database.yml, dentro da pasta do projeto (O Rails mudou o SGBD padrão para o SQLite3, então, vamos ter que modificar realmente o arquivo de definição de banco de dados para usá-lo com MySQL, que agora é da Sun). O meu arquivo ficou assim:

defaults: &defaults

  adapter: mysql

  encoding: utf8

  username: root

  password:

  socket: /var/run/mysqld/mysqld.sockdevelopment:

  database: sits_development

  <<: *defaults

test:

  database: sits_test

  <<: *defaults

production:

  database: sits_production

  <<: *defaults

Uma coisa que eu achei legal foi a parada do “defaults”. Dá pra definir os parâmetros que são iguais para os três bancos e utilizá-los nas outras definições do arquivo, só chamando um “atalho” para a definição dos defaults.

Depois de editado o arquivo de configuração, vamos criar os bancos de dados. Prepare-se, esta é uma etapa muito complicada, que envolve códigos SQL extremamente complexos. Muito cuidado, digite no terminal, dentro da pasta do projeto:

rake db:create:all

Ué, cadê o SQL extremamente complicado? Foi pro espaço (O final do parágrafo anterior foi só pra assustar… :p). Se você estiver duvidando, abra o mysql da forma que desejar e veja que os bancos de dados foram realmente criados.

criando o scaffold e as tabelas

Vamos agora, criar as tabelas para o banco de dados. Aqui, vou criar a tabela de alunos, já que é a mais simples do nosso projeto. Esqueça o SQL, os campos serão criados dentro do script de scaffold, da seguinte forma:

script/generate scaffold Aluno cpf:string nome:string curso:string

Agora, geramos o banco de dados utilizando o comando

rake db:migrate

Se você quiser olhar no mysql, verá que a tabela alunos foi realmente criada. Tudo isso sem uma única linha sequer de SQL. Legal, né?

Criando uma rota para a página principal

Para criar uma rota, é só editar o arquivo config/routes.rb. Por enquanto, vamos definir a página de cadastro de alunos (que já foi criada automaticamente pelo scaffold) como sendo a principal. Precisamos apenas incluir a linha

  map.root :controller => 'alunos'

logo abaixo de

ActionController::Routing::Routes.draw do |map|

Agora, depois de salvar o arquivo, deletamos a página public/index.html (Essa página é aquela que diz “Welcome Aboard”).

Pra ver o resultado, iniciamos o server com o comando

script/server

e verificar a aplicação no endereço localhost:3000 dentro do navegador.

“Crime é proibir alguém de ter acesso a cultura” 15/Fev/2008

Posted by Timóteo in Sem categoria.
add a comment

Só o título fala por si só. Essas palavras são do Miranda (aquele do ídolos), no Campus Party, quarta-feira. Precisa dizer mais???? Ô, RIAA, vai procurar o que fazer!!!

Post curto, pra não cansar muito. Minha mente tá esgotada depois do texto da aula de hoje.

Referências:

Blog do Prof. David, via br-linux

parabéns pra você: 10 anos de OpenSource 9/Fev/2008

Posted by Timóteo in Software livre.
Tags: , , ,
add a comment

É. O Software Livre está completando 10 anos hoje… No dia 9 de fevereiro de 1998, Bruce Perens publicava a Open Source Definition (versão anotada, versão sem anotações), onde estão listadas as 10 características para um software Open Source (coisas como redistribuição livre, disponibilização do código fonte, livre modificação, nenhuma restrição a pessoas, grupos, ou dependência de software proprietário, entre outros).

Ontem, Perens publicou um texto em inglês (aqui), onde comenta sobre os 10 anos do Software Livre, sua penetração nos servidores e nos desktops, e vê com olhos positivos a integração da web à vida das pessoas. Perens também aproveita pra dar uma alfinetada na micro$oft e nas patentes de software. Ele termina o texto dizendo que nunca poderia prever quanto o Open Source seria tão grande durante sua Década Zero (a gente de TI começa a contar do zero né?).

Eu falando: Assim como muita coisa nessa área de informática, o Software Livre cresceu muito nos últimos 10 anos. E não perdeu o fôlego! Pelo Contrário. O Software Livre está cada vez mais forte e presente na nossa vida. Só como exemplo, posso citar Java, MySQL, Linux, OpenOffice, WordPress, etc. Com o crescimento da web e a fusão (me faltou palavra melhor) desktop+web que vem acontecendo ultimamente, acredito que no final da década Um, o Bruce Perens vai muito mais o que comemorar.

PS: Alguém de Caruaru vai pra ENSOL? Comenta aí.

dica: ruby brasil 29/Jan/2008

Posted by Timóteo in Ruby.
add a comment

Depois de ler (com certo atraso) que o novo rails 2.0 não utiliza mais o método scaffold, decidi não continuar o exemplo que estava fazendo aqui no blog, pois usava o rails 1.2.6. Acessei alguns sites e peguei alguns screencasts, e quando estiver preparado para continuar o exemplo, a gente começa de novo.

Por enquanto, só pra não ficar muito tempo sem escrever nada, aí vai uma dica de um site muito bom – em português – sobre ruby: é o Ruby Brasil. é um blog legal sobre ruby on rails, que contém notícias, vários artigos e tutoriais sobre a linguagem e o framework tão falados no momento. E também tem links para vários 3 tutoriais sobre RoR 2.0.

ruby on rails II – começando a diversão 23/Jan/2008

Posted by Timóteo in Desenvolvimento, Programação, Ruby, Software livre.
Tags: , , ,
add a comment

No primeiro post (aqui) de Ruby on Rails, instalamos o Ruby e o Rails. Agora, vamos à diversão.

Para criar o projeto, é só digitar o comando

rails <nome_do_projeto>

Vamos utilizar um exemplo, pra ficar mais claro. Vou fazer um relatório de uso dos PCs aqui no Laboratório da UFPE. Neste post, vou fazer o cadastro de alunos. Instalei o LAMP (Apache+PHP+MySQL no Linux. Aqui tem um tutorial) para usar o MySQL e o phpMyAdmin.

Criando o Banco de Dados

CREATE DATABASE `relatorio`;

Por enquanto, só vamos utilizar a tabela ‘aluno’, então vou criar só ela agora:

CREATE TABLE `alunos` (
    `id` smallint NOT NULL AUTO_INCREMENT,
    `CPF` BIGINT NOT NULL ,
    `Nome` VARCHAR( 50 ) NOT NULL ,
    `Curso` ENUM( 'adm', 'des', 'eco', 'eng', 'ped', 'upe' ) NOT NULL ,
    PRIMARY KEY ( `id` ),
    UNIQUE KEY `CPF_key` ( `CPF` )
) ENGINE = MYISAM ;

OBS: toda tabela deve ter uma chave primária de nome ‘id’, no MySQL o mais fácil é criar isto como ‘numeric auto_increment’.

Criando o projeto:

Vamos chamar o projeto de ‘relatório’. Assim, o código de criação ficaria:

rails relatorio

O rails vai criar uma pasta chamada relatório. Entre na pasta e digite:

script/server

que vai iniciar o servidor WEBrick, embutido no rails. Agora, já podemos digitar no navegador preferido (Firefox) o endereço http://localhost:3000. (sem o ponto =p). Se tudo deu certo, vai aparecer uma página com a mensagem “Welcome Aboard”, dando boas vindas. Note que tem um “link” que informa sobre o ambiente da aplicação. Aqui, estou usando ruby 1.8.6 (linux-i486), Gems 0.9.4 e rails 1.2.4.

Logo abaixo dessas informações, tem uma seção “Getting Started”, que vamos seguir agora.

1. Criar o banco de dados e editar o arquivo config/database.yml:
Já criamos o BD, então é só editar o arquivo. Com o editor de texto de sua preferência (vim), editar a seção development. Fica mais ou menos assim:

development:
   adapter: mysql
   database: relatorio
   username: root
   password:
   socket: /var/run/mysqld/mysqld.sock

2. Gerar os modelos e controladores:
É só utilizar o script generate, na pasta script. São duas linhas de comandos:

script/generate model aluno
script/generate controller aluno

Agora já estão gerados o modelo e o controlador de aluno. Vamos, então, adicionar uma linha no arquivo app/controllers/category_controller.rb, para gerar o scaffold (é esse negócio que vai gerar um CRUD (Create, Refresh, Update, Delete) padronizado – Documentação). O arquivo vai ficar assim:

class AlunoController < ApplicationController
        scaffold :aluno
end

A partir daqui, já é possível acessar o cadastro de alunos a partir do navegador, no endereço http://localhost:3000/aluno (eu precisei reiniciar o servidor WEBrick antes).

Por enquanto é só. Num post futuro, vamos customizar um pouco o cadastro de aluno.

Referências:
urubatan.com.br
API do Ruby on Rails