Se você quer participar do FISL14 e está na região do ABC, junte-se a nós na caravana São Bernardo, envie um e-mail para folksilva@gmail.com se apresentando e eu envio um convite.
Informações sobre tecnologia da informação e conhecimento em geral. Viagens mentais de um desenvolvedor web.
terça-feira, março 26
segunda-feira, março 11
Instalando o Samsung Smart TV SDK no Ubuntu 64bits
Sou usuário do Ubuntu 64bits e estou iniciando um projeto no trabalho para desenvolver um aplicativo para Smart TVs da Samsung, fiquei feliz ao saber que o SDK é baseado no eclipse e possui versão para Linux, mas apenas para sistemas 32bits, neste post apresento a solução que encontrei para esse dilema.
1. Download do SDK
Se cadastre e faça o download do SDK para Linux versão 4.0 no fórum de desenvolvedores da Samsumg: http://www.samsungdforum.com, você precisa baixar os arquivos "SDK Download for Linux" e "SDK Emulator Image for Virtual Box".
2. Instalar o emulador
Instale o Virtual Box na sua máquina com o seguinte comando:
sudo apt-get install virtuabox
Abra o Virtual Box, clique em Arquivo -> Importar Appliance, na tela que surgir, clique em Abrir appliance e selecione o arquivo ova que você baixou do fórum da Samsung, ai é Próximo e Importar pra ter o emulador pronto.
3. Instalar o Java 32bits
Para evitar conflitos com o seu Java 64 bits, acesse http://java.com/en/download/linux_manual.jsp e baixe o Java para Linux (O 32 bits em .tar.gz), no momento em que escrevo esse artigo a versão mais recente é a 1.7.0_17. Feito o download, descompacte na pasta de Downloads mesmo, no terminal execute:
sudo cp -R ~/Downloads/jre1.7.0_17 /opt/
4. Instalar o SDK da Samsung
Descompacte o arquivo baixado, no meu caso o nome da pasta criada ficou como Samsung_TV_SDK_4_Linux, e execute os seguintes comandos no terminal:
sudo cp -R ~/Downloads/Samsung_TV_SDK_4_Linux /opt/
cd /opt/Samsung_TV_SDK_4_Linux/eclipse
Para funcionar você precisa dizer para o Eclipse do SDK usar o Java 32bits que você instalou anteriormente, execute:
sudo gedit eclipse.ini
Adicione ao final do arquivo a seguinte linha:
-vm /opt/jre1.7.0_17
Salve e feche o arquivo, agora é preciso criar um script para inicializar o ambiente 32bits quando você for rodar o SDK, no terminal execute sudo gedit eclipse.sh e escreva o seguinte conteúdo:
export JAVA_HOME=/opt/jre1.7.0_17
export PATH=/opt/Samsung_TV_SDK_4_Linux/eclipse:$JAVA_HOME/bin:$PATH
export MOZ_PLUGIN_PATH=/usr/lib/browser-plugins/
cd /opt/Samsung_TV_SDK_4_Linux/eclipse
./eclipse $*
Salve o arquivo. Para finalizar, execute os seguintes comandos no terminal:
sudo chmod +x eclipse.sh
sudo chown SEU_USUARIO -R .
sudo ln -s /opt/Samsung_TV_SDK_4_Linux/eclipse/eclipse.sh /usr/bin/tvsdk
Pronto, agora você pode rodar o comando tvsdk sempre que quiser iniciar o SDK da Samsung!
5. Atalho do aplicativo
Ficar abrindo o terminal só pra abrir o SDK da Samsung não é muito divertido, então vamos criar um icone pra ele no nosso sistema. Pressione ALT+F2 e digite "alacarte", se nada acontecer você precisa instalar esse pacote, é o gerenciador de menus do Gnome, clique em Desenvolvimento e em Novo item, preencha com os seguintes dados:
Tipo: Aplicativo
Nome: Samsung TV SDK
Comando: /opt/Samsung_TV_SDK_4_Linux/eclipse/eclipse.sh
No icone você pode usar a imagem que está em /opt/Samsung_TV_SDK_4_Linux/AppsTemplate/app/icon/default_106.png, ai é só dar OK e seu icone do menu está pronto para ser acessado!
Embora seja muito fácil desenvolver para a Smart TV da Samsung, é muito mais divertido desenvolver para Ginga, saiba mais sobre o assunto neste link: http://gingahackathon.java.net/. Bom desenvolvimento e até a próxima!
sexta-feira, março 8
Habilidades sociais para trabalhar em equipe.
Os três pilares
[...]. Se trabalho em equipe é a melhor rota para produzir um excelente software, como alguém constrói (ou encontra) uma equipe excelente?Não é tão simples assim. Para conseguir o nirvana colaborativo, primeiro você precisa aprender e abraçar o que nós chamamos de “Os três pilares” das habilidades sociais. Estes três princípios não são sobre lubrificar as rodas dos relacionamentos; eles são o fundamento no qual todas as interações e colaborações saudáveis são baseadas.
Humility (Humildade)
Respect (Respeito)
Trust (Confiança)
Juntos, nós referimos a estes princípios como HRT. Nós pronunciamos isso como “heart” e não “hurt” porque é tudo sobre diminuição da dor e não sobre ferir pessoas. De fato, nossa principal tese é feita diretamente nesses pilares:
Isso pode parecer implausível no começo, mas faça uma tentativa. Pense sobre alguma situação social desagradável ou inconfortável em sua vida até agora. No mais básico nível, todo mundo está sendo apropriadamente humilde? As pessoas estão realmente respeitando uma a outra? Existe confiança mutua?
Nós acreditamos que estes princípios são tão importantes que nós estruturamos esse livro em volta deles.
Esse livro começa com você: levando você a abraçar HRT e realmente internalizar o que isso significa para colocar HRT no centro de suas interações. O primeiro capítulo é sobre isso. Daqui nós criamos círculos de influencia cada vez maiores.
[…]
Nós então examinamos as pessoas que estão interagindo com o seu time diariamente, mas podem não ser parte da cultura da equipe. Esses podem ser colegas de outros times, ou apenas voluntários se oferecendo para ajudar no seu projeto. Muitos deles não apenas desconsideram o HRT, mas podem ser completamente venenosos! Aprender a defender sua equipe deles é a primeira ordem de negócio. Contudo, remover suas presas e sugar eles para sua cultura pode ser um objetivo final. Essa é uma excelente forma para expandir uma equipe.
Muitas equipes trabalham dentro de uma grande companhia, e esse ambiente pode frequentemente ter muito de um impedimento como pessoas venenosas. Aprender como navegar nesses obstáculos organizacionais pode ser a diferença entre lançar um produto ou ter o mesmo produto cancelado.
Por fim, nós consideramos os usuários do seu software. As vezes nós esquecemos que eles existem, mas eles são a seiva do seu projeto. Sem usuários, seu software não tem propósito. Os mesmos princípios do HRT que prosperam na sua equipe podem e devem ser aplicadas para a forma que você interage com seus usuários, e os benefícios colhidos são tremendos.
Vamos parar por um momento.
Quando você pegou esse livro, você provavelmente não estava pensando que estava entrando em um tipo de grupo de apoio semanal. Simpatizamos. Lidar com problemas sociais pode ser difícil. Pessoas são confusas, imprevisíveis, e frequentemente irritantes para interagir. Antes de colocar energia em analisar situações sociais e fazer movimento estratégicos, é tentador amortizar todo o esforço. É muito mais fácil sair com um compilador previsível, não é? Porque se incomodar com as coisas sociais em tudo?
Aqui está uma citação de uma fomas palestra de Richard Hamming:
A moral disso é: não subestime o poder de jogar o jogo social. Isso não é sobre enganar ou manipular pessoas; isso é sobre criar relacionamentos para ter as coisas prontas, e relacionamentos sempre duram mais que projetos.
terça-feira, março 8
Organização pessoal no Ubuntu
1. Coleta de informações
Com o Ubuntu você possui diversas caixas de entrada que podem ser usadas para aumentar a sua produtividade. A primeira, e mais óbvia, é a caixa de entrada de emails no Evolution, nele é possível agrupar as mensagens vindas das suas contas de e-mail e organiza-las como achar melhor. A segunda caixa de entrada está nas anotações do Tomboy, durante uma reunião ou evento, ou até mesmo quando está tendo uma idéia, você pode ir adicionando notas de forma rápida e intuitiva, além disso ele permite organizar as notas em catálogos e criar um relacionamento entre as notas simplesmente digitando o título de uma na descrição de outra, as anotações também estão disponíveis no Evolution, mas com o nome de memorandos. A terceira opção é o Gwibber, ele busca informações das suas redes sociais, e atualmente, pelo menos para mim, a maioria das coisas que quero ler ou saber mais vem do Twitter ou do Facebook, sendo assim, também podemos considerar as redes sociais como uma caixa de entrada mais rápida, só faltou no Gwibber uma forma simples de colocar as mensagens em alguma lista organizacional.
2. Organização dos dados coletados
Agora que você aprendeu como tirar as coisas da sua cabeça usando as ferramentas que já vem no Ubuntu, está na hora de aprender a separar esses dados em listas de tarefas, eventos no calendário e arquivos de referência. Usando o Evolution, você pode criar listas de tarefas categorizadas, nas tarefas você pode associar um e-mail ou um arquivo que está salvo no seu computador, pode definir uma data de início e um prazo e também pode atribuir uma prioridade. O mesmo se aplica a agenda do Evolution, que permite até sincronizar os eventos com a agenda do Google. Como arquivo de referência rápida você pode usar as notas do Tomboy, colocadas em um catálogo especial ou criar uma lista para os memorandos do Evolution. Caso algo que apareça nas minhas caixas de entrada possa se tornar uma referência para projetos futuros, mas não precise consultá-los com certa freqüência, como no caso dos arquivos na referência rápida, simplesmente os armazeno em um diretório que batizei de "Biblioteca" dentro do meu diretório pessoal. Nesse diretório coloco PDFs que recebi por email, scans de revistas e impressões em PDF de artigos que li na web. A minha biblioteca já possui um bom conteúdo que as vezes "salva minha vida" nos apertos que um branco geral pode causar.
3. Mantendo o sistema em funcionamento
Todos esses recursos disponibilizados no Ubuntu podem ser inúteis caso não tenhamos uma disciplina fiel de consultar nossas caixas de entrada e arquivos de referência rápida. O Ubuntu também dá uma força para nos tornar mais disciplinados. Sempre que inicia o computador, automaticamente as suas tarefas, eventos e notas são carregados, o Evolution se encarrega de recordá-lo das pendências em sua agenda e ainda mostra as suas tarefas no menu do relógio, assim fica difícil se esquecer de algo. De qualquer forma, o alicerce principal desse sistema de organização é você, se não usá-lo corretamente ele se tornará inútil.
4. Ferramentas adicionais
Caso precise de mais recursos na organização de listas, recomendo o Getting Things Gnome, já usei por um longo tempo e acredito que o único sistema deste tipo mais fácil de usar do que ele seja o site Remember the milk. O GTG, como é popularmente conhecido, permite criar várias listas de tarefas e associá-las a cores, as tarefas podem receber prazos e etiquetas, deixei de usá-lo simplesmente porque quase tudo que preciso colocar em uma lista está no meu e-mail, então o Evolution tornou o processo mais rápido e menos repetitivo.
Para organizar as suas idéias durante um brainstorm, uso e recomendo o FreeMind, um pequeno aplicativo que permite criar mapas mentais de forma simples, com certeza irá ajudar a tirar as idéias da sua cabeça, aliás, usei ele para escrever este artigo.
Fica ai a minha dica, agora é só instalar o Ubuntu para aproveitar todos os recursos que ele disponibiliza, e o melhor, sem custos e licenças de teste. Até a próxima!
Links de referência:
Evolution - http://projects.gnome.org/evolution/
Tomboy - http://projects.gnome.org/tomboy/
Gwibber - http://gwibber.com/
Getting Things Gnome - http://gtg.fritalk.com/
FreeMind - http://freemind.sourceforge.net/wiki/index.php/Main_Page
Ubuntu - http://ubuntu.com/
A arte de fazer acontecer (Getting Things Done) - http://www.submarino.com.br/produto/1/1062057/arte+de+fazer+acontecer,+a
segunda-feira, dezembro 13
Eu na comunidade Ubuntu
- Wiki do Ubuntu-BR: http://wiki.ubuntu-br.org/LuizSilva
- Wiki do Ubuntu.com: https://wiki.ubuntu.com/folksilva
- Launchpad: https://launchpad.net/~folksilva
domingo, novembro 21
Análise e Projeto Orientado a Objetos - Parte 2
Representa um agrupamento das classes e interfaces, pode demonstrar a decomposição do sistema em sub-sistemas ou camadas.
Diagrama de objetos
Fornece uma visão do sistema em determinado momento, descrevendo o estado e relações dos objetos. Um objeto pode ser nomeado ou anônimo e é representado quase como as classes.
Diagrama de atividades
É um diagrama que apresenta um comportamento do sistema, focado na descrição da ordem dos eventos. É composto por:
- Estado inicial: Representa o começo de tudo.
- Estados de ações: Representam uma ação no sistema.
- Estado final: Representa o fim do fluxo.
- Transições: Representam a passagem de um estado para outro
- Decisões: Ramificações (caminhos alternativos) que dependem de uma tomada de decisão.
- Bifurcações e Uniões: Representam atividades que podem ocorrer em paralelo, a bifurcação representa o começo e pode receber várias entradas, a união representa o fim e tem apenas uma saída
- Raias de natação: Usadas para mostrar quem é o responsável por determinadas atividades.
- Fluxo de Objetos: Um complemento ao diagrama que apresenta o estado e/ou os atributos de um objeto relacionados a uma ação.
quarta-feira, novembro 17
Java - Collections
A Collection se divide básicamente em Listas e Conjuntos.
Veja abaixo as principais características de cada classe:
Listas:
- Permitem repetição
- Mantêm a ordem de inserção
- A busca é feita diretamente pelo índice, por isso é extremamente rápido
- A inserção e remoção dependem da quantidade de itens na lista
- A busca, inserção e remoção são feitas de forma linear, dependem da quantidade de itens na lista
- Não permitem repetição
- Não mantêm a ordem de inserção
- Mistura um array com uma lista ligada
- A busca é muito eficiente
- A inserção e remoção também são muito eficientes
- É impossível determinar a ordem de saída dos dados
- É balanceada automáticamente
- A busca, inserção e remoção são eficientes
- A saída dos dados sempre estará ordenada
Map:
- É um conjunto de pares
- As chaves não podem ser repetidas
- O percurso é feito através das chaves
- Se divide em HashMap e TreeMap
- É um mapa, mas com chaves e valores do tipo String
- Geralmente usado para armazenar configurações da aplicação
- Para obter o Iterator de uma Collection utiliza-se o método iterator() da Collection
- Para saber se existe um próximo item na Collection utiliza-se o método hasNext() do Iterator
- Para retornar o próximo item da lista, utiliza-se o método next() do Iterator
Análise e Projeto Orientado a Objetos - Parte 1
- Objeto: Uma instância de uma classe
- Classe: Um conjunto de características e funcionalidades que definem objetos
- Atributos: Características de uma classe, os dados do objeto
- Métodos: Uma ação executada, algo que o objeto faz
- Mensagem: Uma chamada de método
Notação: Um retângulo dividido em 3 partes, na primeira fica o nome, na segunda os atributos, na terceira os métodos e caso seja necessário é possível criar mais dicisões.
Visibilidade: Para os atributos e métodos da classe pode ser usada as seguintes notações de visibilidade:
- + (público): O atributo/método pode ser acessado por qualquer outra classe
- - (privado): O atributo/método apenas poderá ser acessado pela própria classe
- # (protegido): O atributo/método poderá ser acessado apenas pela própria classe e suas descendentes na herança
- ~ (pacote/default): O atributo/método pode ser acessado pelas classes que estão no mesmo pacote
Relacionamento entre classes
Associação: Representa uma relação “tem um” ou “existe um”. É quando uma classe faz referência a outra classe num determinado período de tempo. Um objeto pode existir sem que o outro exista. É representado por uma linha entre as duas classes. É subdividido em:
Agregação: Uma relação forte “tem um” que define uma propriedade, quando a classe que se relaciona deixa de existir, a classe relacionada continua existindo mas perde parte do sentido de existência. É representado por uma linha, no lado da classe que se relaciona coloca-se um diamante sem preenchimento e no lado da classe relacionada coloca-se uma seta.
Composição: Uma relação muito forte “todo-parte” que diz que uma classe “é parte de” outra classe. Quando a classe que se relaciona é destruída, a relacionada também será. É representado por uma linha, no lado da classe que se relaciona coloca-se um diamante preenchido e no lado da classe relacionada coloca-se uma seta.
Generalização: Representa uma “herança”. De uma classe mais geral para uma classe mais específica. É representada por um linha, na ponta da classe generalizada coloca-se um triângulo.
Dependência: É a relação mais fraca, acontece quando uma classe usa outra classe através da chamada de um método estático ou quando é usado como parâmetro de um método. É representado por uma linha tracejada apontando para a classe que é usada.
Reconhecimento de classe
- Substantivos: se transformam nas classes. Ex.: Pessoa, Carro, Escola.
- Adjetivos: se transformam nos atributos de uma classe. Ex.: cor, peso, altura, endereço.
- Verbos: se transformam nos métodos de uma classe. Ex.: estudar, andar, acelerar.
terça-feira, setembro 14
Ensine o Ubuntu a falar
Primeiro precisamos instalar o "voz" do ubuntu. Eu utilizei o Espeak, para instalá-lo basta clicar nesse link ou digitar o seguinte comando:
~$ sudo apt-get install espeak
Depois de instalado, seu ubuntu já será capaz de falar, faça um teste:
~$ espeak "Hello, world with Espeak!"
Existem variações da voz para masculino, feminino e especiais:
~$ espeak -vpt+m1 "Voz masculina 1"
~$ espeak -vpt+m2 "Voz masculina 2"
~$ espeak -vpt+m3 "Voz masculina 3"
~$ espeak -vpt+m4 "Voz masculina 4"
~$ espeak -vpt+m5 "Voz masculina 5"
~$ espeak -vpt+m6 "Voz masculina 6"
~$ espeak -vpt+m7 "Voz masculina 7"
~$ espeak -vpt+f1 "Voz feminina 1"
~$ espeak -vpt+f2 "Voz feminina 2"
~$ espeak -vpt+f3 "Voz feminina 3"
~$ espeak -vpt+f4 "Voz feminina 4"
~$ espeak -vpt+croak "Voz especial coaxada"
~$ espeak -vpt+whisper "Voz especial susurrada. Como o Darth vader!"
Agora vamos adicionar ao ubuntu a capacidade de contar piadas e pensamentos, para isso usamos um aplicativo popular no mundo linux chamado fortunes. Para instalá-lo basta clicar aqui ou digitar no terminal:
Você pode fazer isso simplesmente digitando:
Vamos criar agora o script que dará boas vindas e falará uma mensagem todas vez que efetuar login. No seu editor de texto favorito digite o seguinte script:
minuto=`date +%-M` # O minuto atual sem preenchimento de zero a esquerda
data=`date +%A` # O nome do dia (segunda, terça etc.)
dia=`date +%-d` # O número do dia atual
mes=`date +%B` # O mês por extenso
ano=`date +%Y` # O ano
Salve como saudação.sh na sua pasta home e atribua a permissão de execução com o comando chmod +x saudação.sh. Para que esse script seja executado toda vez que efetuar o login, basta adicioná-lo nos aplicativos da sessão, siga os passos:
Através do menu Sistema->Preferências abra Aplicativos da sessão.
Na janela que surgir clique em adicionar.
Em nome coloque "Saudação" e em comando "~/saudação.sh". Clique em Adicionar e pronto.
Toda vez que efetuar login você ouvirá as boas vindas do Ubuntu junto com uma piadinha ou um pensamento, muitas vezes ele diz o que esperavamos ouvir.
quarta-feira, agosto 25
Sustentabilidade para empresas
A sustentabilidade permite que a empresa se arrisque com certa segurança, uma empresa que realmente implanta métodos totalmente sustentáveis tem o apoio da sociedade, por isso se torna muito poderosa.
![]() |
| Sustentábilidade |
Para ser sustentável é preciso entender a sustentabilidade. Ela pode ser dividida em três partes. Meio-ambiente, sociedade e economia. A maioria das empresas usam apenas a sustentabilidade econômica, mas ela sozinha não é suficiente.
Meio-ambiente, o assunto do século, todos sabemos que o aquecimento global é um fato, e que cada vez mais surgem problemas relacionados a natureza, ela parece estar se vingando dos maus tratos milenares da sociedade. É possível aliar-se ao meio ambiente para sobreviver a crises, uma forma é praticando coleta seletiva e reciclagem, também é possível reduzir o consumo de água e energia simplesmente mudando alguns hábitos. Plantas dentro de um escritório ajudam a manter a temperatura amena, além de absorver energias que podem provocar estresse.
Uma empresa não pode se dizer sustentável sem apoiar a comunidade periférica, é ela que vai cuidar da imagem da empresa através do marketing mais eficiente de todos os tempos, o boca-a-boca. Apoiar a festinha de São João do bairro ou até mesmo promover palestra e cursinhos abertos a comunidade local cuida para que a imagem da empresa seja divulgada como sociável. Normalmente as empresas ficam distantes da comunidade, mesmo quando a distância física é apenas alguns metros, quebrar essa imagem dá força política para uma empresa.
Para a sustentabilidade econômica não é preciso muitas palavras, ela já está nas nossas mentes e é moldada pelo formato da sociedade, só é preciso saber que sustentabilidade econômica é a capacidade da empresa de sobreviver sem consumir ou descartar seu próprio patrimônio, material e humano.
Uma barreira para a implantação de métodos sustentáveis em uma empresa muitas vezes está dentro dela, as pessoas não entendem ou não se comprometem com a empresa e nem com os objetivos dela, é cada um por si, sobrevivendo a rotina e enfraquecendo a equipe. Para corrigir isso, é preciso entender como as pessoas evoluem. Todos nós estamos em constante formação, a todo momento, até quando dormimos, é essa capacidade que fez a humanidade ser o que é, a espécie dominante. Utilizando o aprendizado de cada pessoa é possível aumentar a confiança da equipe e criar um censo comum de compromisso e lealdade aos objetivos da empresa. Não é possível exigir do funcionário lealdade a empresa, mas é possível deixá-lo leal aos objetivos e é isso o que importa.
![]() |
| Formação |
Antes de tudo, é preciso definir os reais objetivos da empresa a curto, médio e longo prazos e depois usar metodologias transdisciplinares para colocá-los como objetivos pessoais de cada um nos três níveis de formação. O primeiro nível, auto formação, é a formação pessoal, o que ela quer para ela, seus sonhos e objetivos pessoais. O segundo nível é a hétero formação, a formação da pessoa voltada para os que estão a sua volta, família, amigos e colegas de trabalho. O terceiro e último nível de formação é talvez o mais importante e o mais difícil de capitar, envolve os objetivos da pessoa para o resto do mundo, é a eco formação, ela parece meio abstrata na mente das pessoas e muitas vezes é confundida com a hétero e a auto formação, forçar as pessoas imaginarem as consequências dos seus atos além dos horizontes pode tornar-los parceiros inseparáveis, pois a maioria das pessoas não possui uma eco formação sólida e acaba a transformando em desejo de fama.
Para concluir, uma forma de facilitar a evolução da equipe é criando atividades que forcem confiança e criatividade. Abra as portas para novas ideias, elas podem mudar completamente o futuro da empresa, para melhor.
quarta-feira, junho 23
Os Novos Paulistas & Estúdio B no Central Rock Bar
Esse show vai ser sexta-feira, dia 25 de junho a partir das 23:00h! Nada como comemorar a vitória do Brasil curtindo rock e blues! E a entrada é apenas R$7,00! Você não pode perder!
Pra chegar lá, siga o mapa!
Av. José Antonio de Almeida Amazonas, 596 - Vila Guiomar - Santo André - SP
Entre em contato com o Central Rock Bar e reserve agora mesmo o seu lugar através do telefone (11) 8351 2876 ou (11) 7986 7820.
quinta-feira, junho 3
Oração dos Programadores
Sistema Operacional que estais na memória,
Compilado seja o vosso programa,
Venha à tela os vossos comandos,
Seja executada a nossa rotina,
Assim na memória, como na impressora.
Acerto nosso de cada dia, rodai hoje
Informai os nossos erros,
Assim como nós informamos o que está corrigido,
Não nos deixai entrar em looping,
e livrai-nos do coredump,
Amém.
segunda-feira, abril 12
Estudos de Linux - Agendamento de tarefas com Cron
Será necessário editar a lista de tarefas do cron, normalmente em /etc/crontab:
No arquivo crontab, existe uma ordem para escrever um novo agendamento:
MINUTO HORA DIA MES DIA_DA_SEMANA USUARIO COMANDO, sendo que:
- Em MINUTO é possível colocar um número de 0 a 59;
- Em HORA é possível colocar um número de 0 a 23;
- Em DIA é possível colocar um número de 0 a 31;
- Em MES é possível colocar um número de 1 a 12, onde 1 é Janeiro e 12 é Dezembro;
- Em DIA_DA_SEMANA é possível colocar um número de 1 a 7, onde 1 é Segunda e 7 é Domingo;
- Em USUARIO informa-se o usuário que vai executar o comando.
- Em COMANDO informa-se o comando que deseja executar.
0 12 * * 5 root /caminho/até/backuper.sh
0 12 * * 5 root pgclone
Até a próxima!
quarta-feira, abril 7
Estudos de Linux - Backup de bases de dados Postgre
Pré-requisitos:
libnotifypara exibir um balão de alerta quando o backup estiver em andamento (Não obrigatório).
Instale pelo console com
sudo apt-get install libnotify-binou clicando aqui caso esteja usando o firefox no ubuntu.postgresql-clientpara ter a ferramenta pg_dumpall que vamos usar no script (Obrigatório).
Instale pelo console com
sudo apt-get install postgresql-clientou clique aqui.
O Script:
#!/bin/sh
pgu="postgres" #O usuário do banco de dados
pgh="localhost" #O endereço do servidor
destin="/home/usuario/backup/" #O local onde será feito o backup
vYear=$(date +%Y) #O Ano
vMonth=$(date +%m) #O Mês
vDay=$(date +%d) #O Dia
vH=$(date +%H) #A Hora
vM=$(date +%M) #O minuto
fileName="auto-$pgh-$vDay.$vMonth.$vYear.$vH.$vM.backup" #O nome do arquivo do backup
fileError="auto-$pgh-$vDay.$vMonth.$vYear.$vH.$vM.error" #O nome do arquivo do backup
icon="/usr/share/icons/gnome/scalable/actions/gtk-refresh.svg" #O icone da notificação
startMsg="Está sendo efetuado um backup do servidor $pgh para o arquivo $destin$fileName!" #Mensagem de inicio
endMsgSuccess="O backup do servidor $pgh para o arquivo $destin$fileName foi efetuado com sucesso!" #Mensagem de término com sucesso
endMsgFail="Houve uma falha no backup do servidor $pgh para o arquivo $destin$fileName." #Mensagem de término com falha
#Iniciando...
echo $startMsg
if [ $(which notify-send) ]; then
notify-send "Backup Postgre" "$startMsg" -i $icon
fi
#Copiando...
pg_dumpall -U $pgu -h $pgh > $destin$fileName 2>$destin$fileError
s=$?
if [ $s != 0 ]; then
echo $endMsgFail
if [ $(which notify-send) ]; then
notify-send "Backup Postgre" "$endMsgFail" -i $icon
fi
error=$(cat $destin$fileError)
zenity --error --window-icon="$icon" --title="Backup Postgre" --text="$endMsgFail\nDetalhes:\n$error"
exit 1;
else
echo $endMsgSuccess
if [ $(which notify-send) ]; then
notify-send "Backup Postgre" "$endMsgSuccess" -i $icon
fi
zenity --notification --window-icon="$icon" --title="Backup Postgre" --text="$endMsgSuccess"
exit 0;
fi
Salve esse arquivo como backuper.sh (ou o nome que achar melhor) e depois altere as suas permissões para execução.
chmod +x backuper.shAi é só executá-lo pelo prompt usando
./backuper.sh.No próximo post vou ensinar como fazer o script ser executado automáticamente e periodicamente.
Até mais.
Update
Dei uma tunada no script e agora ele faz clonagem de servidores Postgre
No terminal, execute os comandos:
sudo mv pgclone /bin/pgclone
sudo chmod 777 /bin/pgclone
pgclone Faz uma cópia do servidor localhost com o usuário postgrespgclone -u usuario -h host Faz uma cópia do servidor "host" com o usuario "usuario"pgclone --clone --clone-user usuario --clone-host host Faz uma clonagem do servidor localhost no servidor "host"
segunda-feira, abril 5
Estudo de Linux e PHP: Instalando o PHP dbx no Ubuntu
Primeiro é preciso ter as ferramentas de desenvolvimento do PHP
php5-dev e a extensão do pear php-pear que podem ser instaladas via terminal com sudo apt-get install php-pear php5-dev.Depois basta digitar o comando
pecl install -f dbx.Agora temos o dbx instalado mas ainda desabilitado, para habilitá-lo navegue até o diretório
/etc/php5/conf.d e crie um arquivo chamado dbx.ini dentro dele coloque "extension=dbx.so" sem as aspas.Agora é só reiniciar o Apache e pronto, o dbx está instalado e habilitado!
sudo /etc/init.d/apache2 restartPretendo postar meus estudos de PHP com essa e outras extensões.
Até breve!
quarta-feira, julho 8
Tupi Tecnologia da Informação - TUPITI
Trabalhamos com o desenvolvimento voltado para a web e computação em nuvem, que é o futuro da informática.
Desenvolvemos websites para publicidade, aplicações on-line simples e aplicações ricas para a internet (RIAs) além de oferecer suporte para o setor de tecnologia de informação.
Se quiser saber um pouco mais, basta acessar http://www.tupiti.com.br/.
O nosso site é dividido em sessões:
- Produtos: Conheça os produtos que oferecemos.
- Serviços: Conheça os serviços que prestamos.
- Suporte: Ajudamos quem tem dificuldades com tecnologia.
- Links: Um pouco de diversão pra descontrair!!!.
- Contato: o meio de comunicação mais rápido entre nós e os clientes
- Laboratório: Talvez a parte mais importante, onde desenvolvemos nossas idéias de forma colaborativa.
quarta-feira, outubro 15
Apresentando o Cloud Computing
O termo Cloud Computing, ou Computação nas Nuvens, pode parecer até fantástico, longe da realidade, mas já é aplicado e adquiri todos os dias novos adeptos. Afinal, o que é a Computação nas Nuvens? Imagine que todos os programas e arquivos que estão no seu computador simplesmente deixassem de estar nele, e passassem a estar em uma grande nuvem, ainda mais avançada que a própria internet. Não seria mais necessário disco-rígido, pois tudo o que precisa estaria nessa nuvem, basta usar, de qualquer lugar a qualquer momento. Esse seria o conceito de computação nas nuvens, tirar das máquinas finais e colocar na web.
Um exemplo, já bastante usado, de computação nas nuvens, é o uso de arquivos remotos. Já é possível enviar seu arquivo para ser armazenado na web, você pode acessá-lo de qualquer lugar em qualquer momento, de forma segura e versátil, sem se preocupar com quem vai usar seu computador ou se ele terá uma falha que cause a perda de arquivos. Além disso, é possível compartilhar esse arquivo com outras pessoas, dispensando a necessidade de imprimir uma cópia, anexar em um e-mail ou gravar em uma mídia de armazenamento.
Outro exemplo real de uso do cloud computing, é a criação de aplicações on-line. São softwares que não precisam ser instalados e podem ser acessados de qualquer lugar através da internet, são baseados no moderno conceito de web 2.0. Para entender como funciona esse conceito, é necessário conhecer alguns termos. O lado do servidor (BackEnd), é responsável por acessar as informações que estão na web. O lado do cliente (FrontEnd), é responsável por exibir as informações de forma atraente ao usuário. Na antiga web, aplicações on-line só atuavam em um desses lados de cada vez, com a web 2.0, as aplicações agem nos dois lados ao mesmo tempo, permitindo maior interatividade e respostas em tempo real.
Também é exemplo de aplicação da computação nas nuvens, o conceito de desktop on-line, também chamados de webtops. São páginas que podem ser personalizadas e deixam a web com a cara do usuário, alguns webtops até imitam o desktop dos computadores pessoais, mas não deixam de ser aplicações de web 2.0.
O cloud computing não se limita apenas á páginas personalizadas, armazenamento de arquivos e softwares on-line. Os objetivos finais dessa tecnologia são bem mais complexos, pretende-se, por exemplo, criar máquinas virtuais on-line. Isso permite que, de um lado, os computadores pessoais fiquem mais simples, e de outro, os datacenters, lugares responsáveis por manter a “nuvem” sempre no ar, fiquem mais complexos. Seu novo computador poderia ser do tamanho de uma caixa de fósforos.
A implementação da computação nas nuvens já começou. Com relação ao armazenamento de arquivos on-line, visite o Microsoft Windows Live Skydrive (http://skydrive.live.com/) e o eSnips (http://www.esnips.com/), se quer conhecer exemplos de aplicações on-line, não deixe de visitar o Google Docs (http://docs.google.com/) e o Adobe Acrobat.com (http://www.acrobat.com/), para entender os webtops, visite o iGoogle (http://www.google.com.br/ig/), o Microsoft Windows Live Spaces (http://spaces.live.com/) e o Goowy Webtop (http://www.goowy.com/). Ainda existem algumas barreiras a serem quebradas para a implementação total do Cloud Computing, apesar de grande, o número de pessoas que tem acesso a internet ainda não é suficiente para implantar um projeto totalmente voltado para ela, e mesmo se fosse suficiente, as velocidades de acesso ainda são baixas para ficar totalmente dependente da web. Além de tudo isso, ainda não existe uma plataforma de desenvolvimento que permita a criação de softwares mais complexos, como os de CAD, para atuar através da web.
Se realmente for implementado, o cloud computing trará muitos efeitos para a nossa vida digital, alguns bons e outros ruins. De um lado, por serem mais simples, os computadores pessoais ficariam mais baratos, as informações ficariam mais seguras, já que estão espalhadas na internet e não centralizadas em um único computador, que pode simplesmente parar de funcionar, a pirataria de softwares teria fim, pois todas as aplicações seriam on-line, teoricamente impossíveis de serem burladas. Por outro lado, surgiria uma padronização total dos computadores pessoais, isso diminuiria a diversidade e a competitividade de empresas voltadas ao ramo.
A computação nas nuvens, de qualquer modo, já faz parte, e fará mais ainda futuramente, das nossas vidas digitais. Até agora, todos nós só temos a ganhar com esse conceito, que simplifica o modo de usarmos a ferramenta mais poderosa já criada pela humanidade, a internet.
Para saber mais:
· Datacenter (http://pt.wikipedia.org/wiki/Datacenter).
terça-feira, outubro 14
Projeto "O Caderno Vermelho"

sexta-feira, outubro 10
Long Dong - Origens

Era um dia como outro qualquer em Berno Cit, uma pacata cidade com os mesmos problemas que qualquer outra cidade do mundo. No zoológico, Nabum, um rapaz africano, alimentava os leões e tigres. No morro do sem-perna, o polícial recém condecorado, Tiruku, fazia uma patrulha de hábito na boca. Ao mesmo tempo, um grande empresario multi-milionário, popularmente chamado de Mr. E., dava uma volta na cidade com sua ferrari nova. Em uma clínica do sono, Nakama prepara mais uma dose de calmante para seus pacientes. O artista Umpa pintava as guias de rua da cidade com uma certa dificuldade. Não muito longe dalí, no deserto de Berno Cit um grupo de cientistas se preparavam para ligar o LHC (Liquidificador Hiper Cabuloso). Mal sabiam eles e nem todos esses personagens, que suas vidas iriam mudar para sempre dali em diante, quando a Drª Laih apertou o play do LHC, houve a maior explosão já registrada na história das explosões nababescas. Algo de estranho aconteceu, muitos feridos mas nenhum morto. Nabum, Tiruku, Mr. E, Nakama e Umpa foram os únicos a não sofrer nenhum tipo de ferimento. Mas notaram que algo aconteceu em seus corpos...
Não perca a continuação dessa história.
quinta-feira, outubro 9
Acampamento de Desabrigrados Desempregados
Nesse fim de semana tem acampamento dos desabrigados!!! Vamos nos alimentar de larvas e musgos e viver com a natureza!!! Só faltou nós irmos como viemos ao mundo, mas acho que nossa integrante feminina não vai gostar muito heheheh...












