Archive for the ‘ 798387 ’ Category

No space left bug?

Hoje me deparei com um problema nada agradavel. Meu sistema acusa que eu não tenho mais espaço livre na partição /
porém rodando um df mostra que ainda sobram 25%.

Estou rodando a distro Ubuntu Karmic e minha partição raiz está em ext4.

resultado de df:

alandaniel@sefa56866:~$ df
Sist. Arq.           1K-blocos      Usad Dispon.   Uso% Montado em
/dev/sda5             48062440  34035024  11585940  75% /

o engraçado é que criei um arquivo de 10GB usando o comando:

dd if=/dev/zero of=file_to-create bs=1k count=10000000

e esse foi criado perfeitamente, ocupou o restante do espaço sem problemas.

Li o seguinte post http://bbs.archlinux.org/viewtopic.php?id=62958 , e parece que o EXT4 ainda não está 100% estável.

A causa pode ser uma queda na luz que ocorreu ontem 12/04/2010, irei executar o comando:

fsck.ext4 -f /dev/sda5

porém esse diz que podem ocorrer problemas caso executado em uma partição montada,
conforme os resultados irei reportar aqui.

GTD: Automatizando sua Agenda diária usando Google Calendar e Gnome


S.O: Ubuntu 9.10
Ferramentas abordadas: Mozilla Sunbird, Gnome Evolution, Google Calendar, iCalendar, Gnome Clock

Esse post foi feito especialmente para aqueles que adoram utilizar o gnome como shell gráfica e que adoram concentrar sua agenda em um ponto específico, no caso o google calendar.

Já vou começar avisando que o motivo de toda essa parafernalha, é que o plugin do Gnome Evolution para conectar com os serviços da google não funciona 100% então tive que adotar esse workaround.

O google calendar já é um velho conhecido, nele podemos manter em um só local nossos apontamentos e compromissos.

O gnome evolution é a ferramenta default de PIM (Gerenciamento de Informações Pessoais) adotada como padrão no Ubuntu. Agora, por que eu acho legal usar o evolution?

  • O Gnome Evolution possui integração com o Gnome Clock, assim no calendário padrão é possível visualizar seus compromissos, também  quando clicando duas vezes em uma data será aberto automaticamente a agenda em tal dia.
  • Também o alarme integrado é legal:

Porém o mais legal seria o Gnome Evolution fazer Read/Write no Google Calendar. Atualmente existe um plugin no repositório que promete fazer isso, porém eu não tive boas experiências com este e não consegui fazê-lo funcionar. Fui obrigado a tomar a seguinte alternativa:

  • Instale o Sunbird (ferramenta de calendário da mozilla)
  • Configure sua conta google, caso tenha dúvidas: http://www.google.com/support/calendar/bin/answer.py?hl=en&answer=99358#sunbird
  • Faça o download e instale o plugin do sunbird: Automatic Exporter (https://addons.mozilla.org/pt-BR/sunbird/addon/3740)
  • Configure o plugin para exportar o google calendar para um arquivos iCal clicando em Ferramentas > Complementos > Automatic Exporter > Preferencias.
    • Marque a opção exportar ao fechar;
    • Selecione o local em que deseja que seu arquivo .ics seja salvo;
    • Selecione o formato iCalendar;
    • Marque a opção Ativo na área Iniciar uma aplicação depois de exportar, e preencha os campos da seguinte forma:
      • Caminho da aplicação: evolution
      • Parametros da aplicação –force-shutdown
  • Agora abra o Evolution
  • Agendas > Clique direito na listagem das agendas > Nova Agenda
    • Tipo: Neste Computador
    • Marque: Personalizar Opções
    • Selecione o arquivo *.ics gerado pelo sunbird (assegure-se de fechá-lo antes para que o export ocorra)
    • Marque a opção Atualizar Periodicamente

Agora vou explicar o motivo disso tudo: O arquivo .ics será nossa ponte entre o Google Calendar -> Sunbird -> Gnome Evolution, o comando “evolution –force-shutdown” irá forçar o evolution a atualizar o calendário do gnome e fechar automaticamente.

Único empecilho é que você deverá utilizar sempre o Sunbird para controlar sua agenda.

Assim termina o nosso workaround, caso tenham alguma duvida sintam-se a vontade de questionarem.

Sql para selecionar nomes de tabelas e colunas no postgres

Um simples sql para quem quer buscar colunas e tabelas no Postgres

select 
c.relname,
a.attname as "Column",
pg_catalog.format_type(a.atttypid, a.atttypmod) as "Datatype"
 
from pg_catalog.pg_attribute a 
inner join pg_stat_user_tables c on a.attrelid = c.relid
WHERE
a.attnum > 0 AND
NOT a.attisdropped
order by c.relname, a.attname

Comandos essenciais do Eclipse para Java

Tentarei listar nesse post os comandos mais básicos da ferramenta eclipse,
os que eu julgo essenciais.

Sintam-se a vontade para postar outros que você também julgue necessários.

[Ctrl][Shift]+R
Usado para buscar um arquivo (você pode usar wildcards ? qualquer caracter, qualquer string)

[Ctrl][Shift]+T
Buscar um tipo/classe (também possibilita usar wildcards)

[Ctrl]+[Espaço]
Autocompleta um texto (metodo, classe, snippet, anottation, etc).
Existem diversos snippets (blocos de código prontos) que pode ser acessados dessa forma,
um exemplo é digitar “Syso” e pressionar [Ctrl]+[Espaco] assim ele escreverá automaticamente “System.out.println();”

[Ctrl]+A
Selecionar todo o conteúdo do arquivo em questão.

[Ctrl]+I
Identa o código selecionado.

[Shift]+[Tab]
Retrocede identação do bloco selecionado

[Tab]
Caso haja um bloco selecionado irá avança-lo.

[Ctrl][Shift]+O
(letra O)
Irá automaticamente organizar os imports da sua classe Java, removendo os não utilizados.

[Ctrl]+Z [Ctrl]+Y
O bom e velho [Ctrl]+Z que desfaz as ultimas alterações e o [Ctrl]+Y que refaz.

[Ctrl]+Q
Retorna ao ponto da sua ultima alteração (caso você tenha fechado o arquivo ele o abrirá novamente)

[Ctrl]+Click ou F3
Vai até o local onde o elemento clicado, ou com o cursos sobre tiver sido declarado

F2
Exibe as informações do elemento na qual o cursor estiver posicionado

F4
Exibe a Hierarquia da classe em questão, conforme o local onde o cursos estiver posicionado

Por hora são somente estes, sei que muitos devem pensar: “todo mundo sabe disso!”. Criei esse post com o intuito de que fosse utilizado por pessoas em treinamento inicial/estágiarios, muitos materiais relativos e de melhor qualidade podem ser encontrados na internet.
Saber desses comandos pode facilitar e muito o trabalho, aumentar a produtividade além de ajudar a padronização (como exemplo do CTRL+I que onde eu trabalho é pouco usado).

Memoria: Modelo de Curriculum OpenOffice e Comparação de Frameworks

Template de Curriculum Vitae para OpenOffice:

http://templates.services.openoffice.org/en/node/977

Comparação de Frameworks WEB Java e outras:

http://en.wikipedia.org/wiki/List_of_web_application_frameworks#Java_2

Proposal: XMLBean Framework

In these days we listen a lot about MDA that ains liberty of programming language o technology and the problem the company i work was facing, the “neccesary redundancy” of creating data validation on server and client side, I was wondering:

Create instead o POJO , JavaBeans, DTO, FORM (struts), create some XML Schema that we can call XMLBeans, this way we can share between many technologies the ways the data is expected.

I fast-drawed this model:

This .XSD files will be useful for:

  • Form Validation
  • Data Transfer
  • Data Persistence

These FILE must have nothing to do with business logic, otherwise will be too much complexity!

Soon i will work on some proto.

I’ve searched the web to and found some reference that may help:

http://www.ibm.com/developerworks/library/x-flexschema/
http://www.javaworld.com/javaworld/jw-09-2000/jw-0908-validation.html
http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/validation/Validator.html
http://xmlbeans.apache.org/

Code: Um pouco de Shell Script

Para aliviar a memória:

Shell Script,  usado Linux Debian.

Aqui podemos ver exemplos da utilização de | (pipe), ` (crase), = atribuição, > direcionamento de saida, < direcionamento de entrada (os codigos estão em negrito)…

  1. Contar linhas de um texto usando o comando wc (-w conta palavras, -c conta caracteres, etc.. veja man wc):
    echo “Alan Daniel Weiss” |wc -l
  2. Mesclar valor de execução com string (preste atenção nas crases elas quem separam a string do commando)
    echo “Existe(m) `who|wc -l` pessoa(s) conectada(s) em seu computador
  3. Atribuição de variavel e utilização (não devem haver espaçoes entre a variavel e o valor)
    var=`who`
    cat <<EOF
    > Listagem de pessoas conectadas em seu computador:
    > $var
    > EOF
  4. Direcionar erros para a saida (/dev/null significa lugar nenhum, ou seja lixo, voce pode substituir a saida para um nome de arquivo existente)
    ls arquivoquenaoexiste 2>/dev/null
  5. Mescla saida do comando com o conteúdo já existente do arquivo (>> incremental):
    ls >>arquivo

Por enquanto é só isso.

Cópia: Qual a diferença entre cursos de Bacharelados e Tecnólogos!?

Questionamentos mais frequentes sobre a diferença entre Cursos de Bacharelado e Tecnólogos:

1) O que é um tecnólogo?
Trata-se de um profissional de nível superior, apto a desenvolver atividades em uma determinada área. Possui formação direcionada à aplicação, desenvolvimento e difusão de tecnologias, com formação em gestão de processos de produção de bens e serviços. Tem como grande diferencial a ênfase na capacitação para empreender, em sintonia com o mercado.Portanto, os cursos superiores de tecnologia formam profissionais especializados em um ramo específico de uma determinada área.

2) O diploma, a titulação obtida no Curso Superior de Tecnologia é igual à obtida em curso superior de graduação convencional (cursos em faculdades ou universidades)?
O Curso tecnólogo dá ao cidadão formado o diploma de graduação em nível superior, exatamente como qualquer outro curso de qualquer área. Enfim, trata-se de um curso superior como qualquer outro, mas direcionado para um determinado foco.

3) Qual a diferença entre um curso superior de graduação convencional (bacharelado) e um curso superior de tecnologia (tecnólogo)?
A primeira grande diferença é o tempo de formação: um tecnólogo pode ser formado após um curso com duração de 2 a 3 anos, cursando de 1600 a 2400 horas, conforme o curso. A segunda diferença é que o tecnólogo tem uma formação específica para o mercado de trabalho, ao passo que o bacharelado confere uma formação mais abrangente. A terceira diferença é que, em razão do tempo mais curto de formação, existe a possibilidade de ingresso no mercado de trabalho de forma mais rápida.

4) Depois de concluir um curso superior de tecnologia (tecnólogo), o profissional pode dar prosseguimento aos seus estudos realizando cursos de extensão, especialização, mestrado ou doutorado?
A LDB (Lei de Diretrizes e Bases da Educação, Lei 9394/1996), combinada com o Parecer 436/2001 permite que o egresso do tecnólogo (aluno formado no curso de tecnologia), dê prosseguimento aos seus estudos em outros cursos e programas de educação superior, tais como extensão, especialização, mestrado e doutorado. Depende, evidentemente, do interesse do tecnólogo.

5) Por que foram criados os tecnólogos (cursos superiores de tecnologia)?
Os tecnólogos surgiram para suprir uma demanda crescente no mercado de trabalho, que exige uma maior preparação, formação e aprimoramento educacional e profissional no menor tempo possível.Desta forma, tem-se um profissional de nível superior formado em menor tempo, tendo em vista que algumas pessoas não querem ou não podem dispor de quatro ou cinco anos para cursar uma faculdade (curso superior convencional).

Texto repassado pelo professor Giancarlo Moser – UNIASSELVI

Fonte: http://www.comunicandomoda.com/2007/05/aticle-qual-diferena-entre-cursos-de.html

Refresh image using jquery

A little trick to reload images without refresh the whole page:


	<img id="captcha" src="/users/captcha" />
	<a href="#" onclick="$('#captcha').attr('src', '/users/captcha?hora='+(new Date()));">

The trick is add the actual time within the URL, then the browser will reload the image, otherwise it doesn’t.

Microformats hlisting test: Sell my brand new GPS


GPS Satellite A-GD41

a venda
(26/10/09)

Vendo GPS Satellite novo

por R$ 350

Contatar Alan Daniel via


Padre Achieta, 2670
Curitiba, PR
80730-000 BRAZIL