quinta-feira, outubro 17, 2013

Configurando NetBeans para rodar projeto PHP5.4

Eu comecei a usar o NetBeans a pouco tempo, então muita coisa para mim é novidade. Estou gostando, mas no começo só levantava a aplicação na mão, pois não sabia (não estava muito interessado) levantar o servidor php5.4 a partir do IDE.

No meu cenário tenho um projeto em CodeIgniter e o abri no NetBeans (ele cria uma pasta "nbproject" dentro da pasta raiz do projeto, onde ele guarda informações e configurações específicas para o IDE se encontrar.

Eu fazia o seguinte: ia na pasta do projeto e executava:

php5 -S localhost:8002

Pronto. Rodava em um servidor PHP incorporado para fazer os testes enquanto desenvolvo. Mas e no NetBeans?

Vou considerar que o seu NB já está configurado, com os plugins, para PHP.

Vá em "Ferramentas" > "Opções" e aponte o interpretador PHP5 correto.

Abra o menu auxiliar no projeto (clique com o botão direito do mouse) e selecione a opção "Propriedades"; daí em "Executar Configurações".

Eu preferi criar uma configuração minha (nomeie como quiser), e escolhi "Servidor de Web de PHP incorporado" na opção "Executar como".

Escolhi também uma porta específica para não interferir no Apache que tenho instalado; coloquei a mesma porta na configuração do framework (Nome do host = localhost; Porta: 8002).

Pronto!

Agora é só clicar em "Play" ou "Executar" no projeto que ele roda o script "php5 -S localhost:8002" abre a aplicação no navegador padrão (você pode configurar no NetBeans).

Finito!


quinta-feira, outubro 10, 2013

Ubuntu 13.04 e o freezy no vídeo (Nouveau NVidia)

Decidi formatar meu Ubuntu e instalar do zero o 13.04 (havia instalado tanta coisa que era mais fácil fazer isso). Ótimo! Sem problemas com resolução, mas dessa vez a aparência enganou: congelava o vídeo caso abrisse páginas com vídeo em formato específico ou muitas páginas no Youtube, por exemplo.

Outras pessoas passaram por esse problema (e podem estar passando).
Configuração da minha máquina:
AMD FX(tm)-6300 Six-Core Processor × 6 (64bits)
Vídeo GeForce 8400GS

Solução: substituir o driver genérico que vem com o Ubuntu (Nouveau) e instalar o oficial da NVidia.

Fonte principal da solução 1: http://www.ubuntuupdates.org/ppa/xorg-edgers

#1: Incluir no repositório e instalar o pacote da Nvidia
O que eu fiz:

sudo add-apt-repository ppa:xorg-edgers/ppa
sudo apt-get update
sudo apt-get install nvidia-current nvidia-settings



#2: Outra opção é instalar pelo script que você pode encontrar no site da NVidia:
http://www.nvidia.com.br/Download/index.aspx?lang=br

Baixe (para mim, hoje, NVIDIA-Linux-x86_64-319.60.run), altere a permissão para que ele possa ser executado e execute-o:

chmod +x NVIDIA-Linux-x86_64-319.60.run
sudo ./NVIDIA-Linux-x86_64-319.60.run



Depois abrir o aplicativo de atualização (Configuração do Sistema - Programas e Atualizações), vá na aba de drivers adicionais e verá uma penca de drivers da NVidia. Eu escolhi o mais novo no que se refere a Driver binário NVidia proprietário.

Reiniciei e pronto. Nunca mais aconteceu. :D

sábado, abril 13, 2013

Atualização do Ubuntu e problema com a resolução

Já é a segunda vez que atualizo meu Ubuntu e ele perde a configuração de vídeo. Sim, perde.
Quando ele fez uma atualização grande (com pacotes do sistema e kernel) semana passada, ao reiniciar, o monitor voltou com resolução baixa. Verifiquei o arquivo /etc/X11/xorg.conf e ele estava limpo apenas com a definição padrão de monitor.
Minha placa de vídeo é GeForce 6150SE nForce 430 e meu monitor é um LG W2253V. Como eu tinha um backup do meu xorg.conf (este é um problema reincidente em atualizações do Ubuntu com esta configuração de hardware), substitui o conteúdo do arquivo do /etc/X11 pelo do meu backup funcional.

sudo gedit /etc/X11/xorg.conf

Tem que ser "sudo" pois é um arquivo de sistema e só root pode mexer nele.

Não reiniciei a sessão... reiniciei o computador.
Quando entra na interface gráfica... eis que surge o alerta:


nenhum dos modos selecionados foram compatíveis com os modos possíveis:
Tentando modos para CRTC: 72
CRTC 72: tentando o modo 1280x1024@61Hz com saída em 1920x1080@67Hz (passo 0)
CRTC 72: tentando o modo 1024x768@71Hz com saída em 1920x1080@67Hz (passo 0)
CRTC 72: tentando o modo 800x600@73Hz com saída em 1920x1080@67Hz (passo 0)
CRTC 72: tentando o modo 640x480@60Hz com saída em 1920x1080@67Hz (passo 0)
CRTC 72: tentando o modo 1280x1024@61Hz com saída em 1920x1080@67Hz (passo 1)
CRTC 72: tentando o modo 1024x768@71Hz com saída em 1920x1080@67Hz (passo 1)
CRTC 72: tentando o modo 800x600@73Hz com saída em 1920x1080@67Hz (passo 1)
CRTC 72: tentando o modo 640x480@60Hz com saída em 1920x1080@67Hz (passo 1)
Veio em uma resolução melhor, mas ainda não a normal de 1920x1080.


A última tentativa antes de reinstalar o 12.04 (ou tentar o 13.04) foi reinstalar o nvidia-current e o nvidia-current-update.

Se você tentar iso em módo gráfico, acesse o gerenciador de pacotes, remova ambos e os instale novamente.
Se você tentar em modo texto, faça:
Remover
sudo apt-get purge nvidia-current
sudo apt-get purge nvidia-current-updates

Instalar
sudo apt-get install nvidia-current
sudo apt-get install nvidia-current-updates


Reiniciei.

Sucesso!

Para mim, esta foi a solução: reinstalar estes pacotes. Por algum motivo a atualização do Ubuntu zoou estes carinhas

quinta-feira, janeiro 24, 2013

Arquivos PDF no Linux: juntando, quebrando e brincando

Pessoal, bom dia!

Vamos direto ao ponto. Minha necessidade era juntar 2 arquivos PDF. A solução foi utilizar o PDFTK, em linha de comando mesmo.
Fuçando na internet, achei uma postagem do Helbert Rocha em http://meupinguim.com/como-juntar-pdf-linux/ que atendeu à minha necessidade e depois também encontrei uma outra postagem do Ricardo Costa em http://www.linuxdescomplicado.com.br/2011/11/maneira-mais-facil-para-unir-e-dividir.html que dava referência ao site do desenvolvedor.

PDFLabs - http://www.pdflabs.com/docs/pdftk-cli-examples/

Instalando:

Abrindo o console você deve instalar (se não já tiver instalado, claro) o PDFTK. Esta ação deveser feita como super-usuário, então:
$ sudo apt-get install pdftk

Com ele instalado você pode obter as informações de comandos e parâmetros utilizando:
$ info pdftk

A partir de agora, mão à obra!

Quando eu trabalho com arquivos com necessidade simples, prefiro tê-los na mesma pasta e trabalhar com eles gerando o produto do trabalho no mesmo diretório. Mas isso é de cada um. Então, por exemplo, considerando que quando abrimos uma console estamos em nosso "home" e que os arquivos estejam no Desktop:
$ cd Desktop

Agora os usos mais interessantes (para mim)!

Juntando arquivos:

Vamos juntar 3 arquivos - a1.pdf, a2.pdf e a3.pdf - em junto.pdf
$ pdftk a1.pdf a2.pdf a3.pdf cat output junto.pdf

Podemos também dar apelidos para um uso mais avançado, e unir somente alguns deles da lista:
$ pdftk A=a1.pdf B=a2.pdf C=a3.pdf cat A C output parcial.pdf

Se quiser juntar tudo de um diretório:
$ pdftk *.pdf cat output tudo.pdf

Colando 2 arquivos, sendo uma página de cada por vez (escaneou dessa forma, por exemplo):
$ pdftk A=impar.pdf B=par.pdf shuffle A B output ordenado.pdf

Separando:

Vamos separar junto.pdf em páginas individuais:
$ pdftk junto.pdf burst

Removendo:

Vamos remover a página 5 e gerar o arquivos faltando.pdf (a saída será de 1 a 4 e de 6 até o fim):
$ pdftk completo.pdf cat 1-4 6-end output faltando.pdf
ou
$ pdftk A=completo.pdf cat A1-4 A6-end output faltando.pdf

Brincando um pouco:

Juntando 2 arquivos, o primeiro inteiro e o segundo somente as 3 primeiras páginas.
$ pdftk A=a1.pdf B=a2.pdf cat A B1-3 output juntofaltando.pdf

Girando a 90 graus em sentido horário (leste/direita) a primeira página do arquivo e o restante deixando como veio:
$ pdftk entrada.pdf cat 1east 2-end output saida.pdf

Segurança:

Criptografando um arquivo (128-bit por padrão) com senha "minhasenha":
$ pdftk entrada.pdf output saida128.pdf owner_pw minhasenha

E com criptografia 40-bit (revoga todos os acessos por padrão):
$ pdftk a1.pdf a2.pdf cat output saida40.pdf encrypt_40bit owner_pw minhasenha

Juntando 2 arquivos sendo o primeiro com senha e gerando um sem criptografia:
$ pdftk A=comsenha.pdf semsenha.pdf input_pw A=senhadoarquivo cat output saida.pdf


Espero ter ajudado! Dê uma olhada na info do pdftk e no site do desenvolvedor que passei no início da postagem.

Abraço!

quinta-feira, novembro 15, 2012

Instalação do Android SDK

Para desenvolver aplicações para Android é necessário ter um kit de desenvolvimento, composto por um IDE e alguns plugins. Você pode utilizar uma IDE já instalada e acrescentar o pacote do android (http://developer.android.com/sdk/index.html), ou baixar do site o pacotão com o Eclipse tudo junto e configurado. Nesta última, mais prática (e eu prefiro não misturar a IDE no início), me dei mal.

PLANO A

Passo 1: Baixar o compactado "adt-bundle-"
Passo 2: descompactar no diretório de sua preferência.
Dentro de "adt-bundle-" ele tem "eclipse" e "sdk", com conteúdos óbvios. No site avisa-se para não alterar o caminho relativo entre eles (deixar sendo pastas irmãs).
Passo 3: Executar o "eclipse" dentro da pasta "eclipse".

Para Windows deu tudo certo!
Para Ubuntu (Linux) não entendi até agora...

Eu clicava no executável eclipse e nada acontecia.
Olhei as permissões dos arquivos (ls -la) e tudo parecia bem... o executável do eclipse estava com permissão de execução. Por via das dúvidas dei "chmod -R 777" no diretório (o ignorante!). E NADA... Pela linha de comando dava "Impossível executar o arquivo binário" (cannot execute binary file).
Procurei na internet e poderia ser que eu havia baixado para 64 bits quando o meu computador é 32 bits. Diz o site que rodaria para ambos e só havia 1 download por SO (http://developer.android.com/sdk/index.html). Desisti.

Aí parti para o plano B: baixar o Eclipse Juno (última versão)e depois instalar os plugins.

PLANO B


Passo 1: Baixar o Eclipse. Eu baixei o Juno para desenvolvedores de mobile (Eclipse com alguns plugins já configurados): http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/juno/SR1/eclipse-mobile-juno-SR1-linux-gtk.tar.gz

Passo 2: descompactar (eu testei para ver se o executável do eclipse rodava - e rodou).

Passo 3: Instalar o plugin do ADT (install new software, add repository, next, next...):
http://developer.android.com/sdk/installing/installing-adt.html
Versões mais antigas pedem uma dependência chata de resolver - use a versão atual do Eclipse).

Passo 4: Reiniciar o eclipse e instalar o SDK (se você tiver o pacote pode indicar, senão o Eclipse/ADT faz download e configura)

Pronto!

Ufa...

Agora me atualizar e fazer alguns testes. Tem um treinamento no próprio site do Android: http://developer.android.com/training/index.html

Divirtamo-nos!

segunda-feira, outubro 08, 2012

Instalação HP Deskjet Wireless

Comprei uma impressora HP Deskjet 3516. Em casa uso Ubuntu, logo o CD de instalação que vem com ela não serve (só tem instalador para Windows e Mac). Pelo notebook com Win7 instalei o software, fiz os testes iniciais nela e configurei o acesso wireless. Perfeito. Daí fui instalar no Ubuntu 12.04.

Você pode instalar o pacote que tem na Central de Programas do Ubuntu chamado Caixa de Ferramentas HPLIP. Se não encontrar ou não aparecer, busque por "HP" que ele aparecerá. Esse cara contém utilitários de interface gráfica para as impressoras HP.
Uma outra forma é você entrar no site do criador da ferramenta:

  • baixar o ".run" (21~22MB) e executá-lo - http://hplipopensource.com/hplip-web/install/install/index.html
  • Provavelmente você baixou e ficou na pasta "Downloads": abra o terminal e vá para essa pasta: "cd Downloads" (quando abrimos o terminal normalmente estamos no home do usuário).
  • estando nela execute como super usuário: "sudo sh hplip-3.12.10.run" onde "3.12.10" é a versão do driver.
  • responda às perguntas, muito simples e diretas - quase como um "Next-Next" -, na instalação em modo texto.
  • a última é se você vai conectar sua HP via USB ou wireless - se for wireless você responde "ignore/continue"

Ao final abre uma tela em modo gráfico para varrer e buscar a impressora e imprimir uma página de teste.

Muitos passos? Nada! É que eu quis escrever alguns detalhes para facilitar.

Esse cara escreveu bem mais direto o segundo método: http://www.vivaolinux.com.br/dica/Instalacao-de-impressora-wireless-no-Ubuntu-10.10

Abraço!!!

sábado, setembro 08, 2012

Calligra Suite

Dando uma olhada por aí, procurando alternativas para o LibreOffice - que é uma excelente suite de escritório que aprendi a trabalhar e, com exceção do PowerPoint, já não vejo diferença ou sinto falta do MSOffice -, achei o Calligra Suite.
Calligra Suite é o novo projeto baseado no KOffice da KDE. Por conta disso lá você encontra ainda o Krita e o Karbon com o mesmos nomes.
Baixei e testei. Me surpreendi positivamente, pois achei que pudessem ter... "cagado" o que era bom.

A proposta de disposição é bem diferente das suites mais usadas (LibreOffice e MSOffice) e padronizada entre os produtos - com algumas fugas.
Salva em ODF, ou seja, documento aberto padrão e o mesmo de trabalho do LibreOffice. Exporta para PDF nativamente (também como LibreOffice).
Não tem somente o editor de textos, planilha, slides. É bem mais completo (não significa que seja melhor) que o LibreOffice (consequentemente ao MSOffice) com relação às aplicações da suite.

Na página explicativa do site (http://www.calligra.org/tour/calligra-suite/) mostram a divisão de pacote office (Words, Sheeets, Stage, Kexi e Flow), pacote gráfico (Krita e Karbon) e gestão de projetos (Plan).


Calligra Words:
Estranhei no início  (primerios 3 minutos) para as formatações e inserções de campos automáticos, pois tudo está à direita em menus sanfona. Muito bom isso... e fácil de usar. Já vem com alguns modelos simples, mas poderia vir com mais.
Os outros produtos possuem "coisas" acima da área de trabalho e também elementos gráficos à esquerda. O editor de texto não.

Calligra Sheets:
Controles principais acima, gráficos à esquerda e algumas formatações e fórmulas à direita. Como as outras suites, principais funções e tem os menu superior bem rico - não poderia ser diferente.

Calligra Stage:
Como o Sheets seguindo o padrão dos produtos. Os menus/janelas À direita ajudam muito. Permite edição com notas e ordenação dos slides; visualização dos slides à esquerda. Já vem com alguns modelos interessantes e transições, e funciona muito bem.

Calligra Flow:
É o editor de diagramas da suite. O MSVisio é mais  intuitivo, mas depois que você pega o jeito (tive dificuldade no início ára conectar as formas!!!), ele fica facílimo de se trabalhar. Tem muita opção de diagramas e elementos: BPM, engenharia química, ótica, rede, fluxograma, motor, elétrica etc.
Lembra um pouco o Dia - que é muito bom -, mas é melhor organizado.

Kexi:
O LibreOffice tem o Base e o Kexi faz a mesma coisa. Ele funciona como editor de banco de dados e cria formulários de entrada, consultas e relatórios como o MSAcces faz. Pode manter o banco em um arquivo dele, mas como o Base do LibreOffice, ele se conecta a um banco sob um SGBD (Mysql, PostgreSql, SQLServer) e importa dados do MSAccess. Bem interessante. Segue, em partes, o padrão dos menus e disposição dos controles, mas o objetivo dele é diferente dos demais e não tinah como ter a janela idêntica. No início confunde um pouco.

Karbon:
Desenho vetorial. Muito bom como sempre foi. Não chega parto do CorelDraw e acredito que nem seja esta a intenção. Ele faz parte de um suite de escritório e atende muito bem a todas as necessidades de usuários domésticos e empresas que não precisam dos recursos avançados do vetorial da Corel - muita gente tem o CorelDraw e nem usa ou nem sabe usar o que ele tem a mais destes "mais simples". Se você já usou o Scribus, estará em casa.

Krita:
É o mesmo caso do Karbon, mas com relação ao Photoshop. Atende à maioria dos usuários da mesma forma que o Gimp. Mantém o padrão dos controle gráficos escolhidos à esquerda, principais comandos acima e os menus/janelas de propriedades à direita. Tem seu formato de arquivo padrão, além se dalvar nos tradicionais (PNG, BMP, JPG etc) e OpenRaster. quem já mexeu com o Gimp e/ou Photoshop não terá problemas.

Braindump:
Diretamente do seu cérebro para o papel! Já ouviu falar no FreeMind, XMind (gosto desse!) ou algum software de mapa mental? Mas não vou negar: tive dificuldade no início, pois não é tão intuitivo quanto o XMind. Segue o padrãozão dos menus e disposição dos controles.

Plan:
Sabe o MSProject? É o mesmo caso do Krita e Karbon. Não tem todos os recursos do mais usado software de gestão de projetos, mas é uma ferramenta de fácil uso e viável para projetos pequenos e médios - na minha concepção. Um cara como esse faz falta no LibreOffice.
Ele começa pedindo um modelo a seguir e inicia com opção de tutorial de uso que você pode pular/fechar - um chamariz para experimentar. Ele mentém à sesquerda as visualizações e relatórios automáticos que são bem completos. Faz gestão das tarefas (óbvio), de recursos, de custo, tem gantt, lista de dependências, tem gráficos de performance, visão de WBS, estado de tarefa (to do, doing, done)... gostei.

Quase todos abre com uma janela para escolha de um modelo (como no LibreOffice e no PowerPoint). Achei muito bom isso.
Site do Calligra é http://www.calligra-suite.org/

Abraço!



sexta-feira, setembro 07, 2012

Estatísticas da semana desde blog

Retornando às atividades depois de alguns meses [muitos meses], fiquei curioso para ver o cenário dos acessos... Por isso as estatísticas da semana:

Navegadores:
  1. Chrome: 55%
  2. Firefox: 23%
  3. Safari: 10%
  4. Internet Explorer: 4%
Da última vez que olhei [há muitos meses] a situação era outra com IE e FF dividindo a ponta, com Chrome em terceiro. Mas os tempos são outros e o cenário é diferente. Logicamente, com o iPad e iPhone, o Safari apareceu ficando agora À frente do navegador da Microsoft.

Sistemas Operacional:
  1. Windows: 60%
  2. Linux: 21%
  3. Macintosh: 11%
  4. iPhone: 5%
O SO da Microsoft ainda lidera, mas diminuiu bem - antes era de aproximadamente 80%. MacOS e iPhone somam juntos 16%, enquanto as distros Linux ficam com 1/5 dos acessos.

Periodicamente analisarei esses acessos e publicarei. Não que meu blog seja uma referência de acesso ou algo assim, mas é curioso acompanhar essas mudanças.

Agile Brazil 2012

Essa semana aconteceu o Agile Brazil 2012. Infelizmente não pude ir no dia 7 de setembro, último dia, mas pode ter certeza que o evento valeu a pena.

Uma coisa que achei interessante foi o amadurecimento com relação à gestão de projetos: muitos introduziram como novidade na gestão da equipe ágil indicadores tradicionais como EVA [não só burnup] para a sprint e projeto - coisa que muitos não faziam porque achavam desnecessário ou simplesmente desconheciam por achar que Scrum puro bastava. Outra coisa interessante foi a força que o Kanban [não o quadro] ganhou colocando o timebox em cheque em muitas situações. O engraçado que para os indicadores não querem usar o nome tradicional ou descobriram e não sabem que estão fazendo algo "um pouco antigo".

O clichê é fato: Não existe solução perfeita... não existe bala de prata. A agilidade está na liberdade e adaptação sempre focando a melhoria, otimização e produtividade real, agregando valor ao negócio do cliente constantemente. Para certas organizações a burocracia se faz necessária, o processo é importante e isto agora está vindo de forma mais clara dos agilistas.

Esta maturidade em gestão apresentada/explicitada por muitos foi excelente para ver que não é só a gente que precisa montar um Frankenstein para atender à nossa realidade.

Para mim a gestão do projeto é a mesma; o que muda é a forma que cada gerente encara as situações. Cada cenário de empresa, cliente, equipe, escopo, interesses, esfera e cultura afetam na maneira de condução e nas decisões de gestão tomadas pelo LP, GP ou SM, ou quaiquer pepéis e nomenclaturas que venham a surgir para a liderança de um time.

Link: http://www.agilebrazil.com

Viva a agilidade! Parabéns pelo evento!

terça-feira, setembro 04, 2012

Blog sobre Gestão de Projetos

Segue o blog do meu professor, Nelson Rosamilha, no curso de Gerenciamento de Projetos (que terminei faz 3 anos... :o):
http://nelsonrosamilha.blogspot.com.br

Glossário de Gestão de Projetos

Recebi um e-mail comum livro/dicionário de termos de gestão de projetos em inglês. Procurando um pouco na internet, apesar de achar que não tenha todos os detalhes do livro, encontrei alguns sites interessantes com glossários.
Até!

quinta-feira, setembro 01, 2011

PHP: Cannot modify header information...

Você está querendo fazer um redirecionamento (usando a função header diretamente ou indiretamente por um framework) em PHP, e toma isso:

Severity: Warning
Message: Cannot modify header information - headers already sent by (output started at.........


Que mensagenzinha chata.
Se vocês já fuçou e viu que não é nada óbvio - esta mensagem diz que você quer está querendo modificar o cabeçalho da página depois de ter enviado alguma coisa, então verifique se explicitamente você não enviou nada - eis as possíveis causas.
  1. veja se antes do '[?php' não tem um espaço ou linha em branco;
  2. se seu arquivo php terminar com '?]' (recomenda-se não finalizar o script), seja se depois dele não tem espaço ou uma linha a mais;
  3. veja se a codificação dos arquivos agregados (classes, subclasses, views etc) é a mesma (ANSI, UTF-8).
Todas essas coisas aconteceram já comigo e hoje vi um caso parecido e resolvi postar. Espero que ajude...

segunda-feira, janeiro 31, 2011

Internet Explorer 9: ou vai ou racha.

Há anos precisávamos desenvolver as aplicações web e websites para funcionarem perfeitamente em dois tipos de navegadores: os que seguem o padrão e o IE. Mas por quê? Porque a maioria dos usuários usavam Windows com IE, fazendo com que desenvolvedores com conhecimento superficial somente desenvolvesse sites para IE5/6, e assim somente quem tinha IE visualizava e conseguia trabalhar corretamente criando um ciclo vicioso. Graças a Deus isto mudou...
Depois de anos fazendo um trabalho dobrado e testando sites e sistemas em diversos navegadores e criando scritps que verificavam que navegador o usuário estava usando e depois de campanhas exaustivas sobre padrão e etc e tal... hoje a maioria dos sites segue o padrão; acessibilidade e usabilidade enfim no Brasil são itens levados a sério. Ufa!
Não... ainda não 100%, mas já está bem melhor do que antes. E a Microsoft que havia achado que seu IE6 era o máximo, viu um declínio se iniciar e se consolidar gradualmente por causa da originalidade das outras equipes desenvolvedoras de navegadores de internet e das novas funcionalidades de seus produtos. As pessoas comuns começaram a migrar de navegador e o Firefox ganhou força. Opera e Safari deram um sinal de vida, a Google lança o Chrome para Windows, todos eles evoluem seguindo os padrões, são leves e funcionais.... e só aí a Microsoft lança o IE7 seguindo um pouco os padrões da W3C... mas foi meio bizarro. Lança o IE8... é verdade! Lançou o Internet Explorer 8. Nada de muito diferente e as pessoas queriam e querem coisas novas e boas. Aí de uma hora para outra veio a luz em alguém e esse cara falou: Vamos baixar a bola e fazer algo que funcione: "Fiat IE9".
A promessa de leveza e funcionalidade seguindo o que já é feito pelos outros navegadores é um tanto o quanto estranho. O HTML5 é a nova bandeira positiva, coisa que os FF4, Chrome e Opera já estão até mais avançados. Mas eu quis ver mais: instalar no XP do micro do meu trabalho. Não dá, funciona no Win7. Não sei se roda no Windows Vista (que é um lixo), mas eles vão conseguir das duas uma: Ou todo mundo magicamente migrará para o Windows 7, ou ninguém vai usar o IE9 e vai confortavelmente continuar instalando e usando o Firefox ou Chrome.
Qual será o grande diferencial do Internet Explorer 9 afinal? Qual a vantagem real? Por que usá-lo? Breve saberemos (ou não) estas respostas. A única certeza é que este projeto foi anunciado e tem sido trabalhado faz um bom tempo com dedicação e exposição na mídia. Seu lançamento oficial no próximo dia 10 será decisivo para a Microsoft e seu navegador. Precisa convencer nos primeiros dias para retomar a fatia do mercado perdido nos últimos anos. Se não agradar a curto prazo, vai chamar um padre para a extrema-unção, pois este enfermo estará atestado como em caso terminal. Se agradar, ainda tem que passar pelo critério de Sistema Operacional para poder dizer: respire que voltamos a competir!
Que aconteça o melhor para os usuários, desenvolvedores e para a web. Resumindo: Agora ou vai ou racha!

segunda-feira, junho 28, 2010

Spams que continuam...

Essa é velha e ainda chega pelo e-mail (ou seja, repassam):

Oi, nós somos Andy e John, os diretores do Messenger. Antes de mais nada, pedimos desculpas pela interrupção, mas o Messenger acabará. Isso acontecerá porque muitas pessoas desconsideradas têm várias contas diferentes. Neste momento, só temos 578 nomes livres e por isso que o uso do Messenger e do Hotmail terá um custo a partir do verão de 2010. Se você mandar esta mensagem, no mínimo, a 18 pessoas diferentes da sua lista, seu ícone ficará azul, o que significa que será grátis para você. Se não acredita, visite o site www.msn.com e veja por si mesmo. Se você quer que encerremos sua conta, não mande esta mensagem, mas se quer conservá-la, mande-a a seus contatos. Isto não é uma brincadeira, mande-a!!! Vai ver que ficará azul!!!
Este é sobre as eleições.... mais uma vez pedem para clicar:

Projeto Mesário

O programa Mesário Eleitoral foi criado com a pretensão de incentivar o eleitorado voltado à prestação de serviços eleitorais nas mesas receptoras de votos. O Tribunal Superior Eleitoral, considerando a importância do tema, realiza, desde 2004, ações nesse sentido.

O projeto busca a ampliação do número de colaboradores da Justiça Eleitoral, de forma consciente. Pretende-se, nesse contexto, cadastrar mesários, universitários ou não, qualificados e aptos a desempenhar satisfatoriamente suas atribuições no dia da eleição.

Acesse o formulário e as informações sobre o programa Mesário Eleitoral no endereço: www.tse.gov.br/internet/servicos_eleitor/mesario.htm [o link direcionava para outro lugar]

Praça dos Tribunais Superiores - Bloco C - Setor de Autarquias Sul, Brasília - DF - 70096-900 - Brasil

Por favor, não cliquem nessas coisas... Microsoft e TSE não enviariam um e-mail mal formatado destes e nunca pediriam para fazer nada desta forma.

Abraço!

sexta-feira, março 12, 2010

Diferenças do HTML5 / HTML4 parte 2 - Estrutura

Pensando na estrutura dos documentos, o HTML5 foi melhorado com uma semântica mais coerente.
O primeiro ponto é que o documento é composto por seções, independente da função designada ao elemento que a define. Existe um elemento de seção genérica, mas tudo na estrutura podemos chamar de seção.
Estes são os elementos novos que prometem organizar melhor o documento:
  • section: indica uma seção genérica da aplicação ou do documento, que juntamente com os títulos [h1], [h2]...[h6], servem para indicar a estrutura da informação ou conjunto relacionado. Esse cara substituiria a tag [div] de uso genérico;
  • article: indica um pedaço de conteúdo do documento, como um post de um blog ou uma notícia de um jornal (por exemplo: tenho uma seção de notícias e dentro dela vários artigo);
  • aside: contem itens referentes à página ou ao conteúdo focal - a barra lateral com os links, banners etc;
  • nav: contem os itens de navegação do documento - aquela barra, normalmente superior, com os links;
  • hgroup: é o agrupamento de itens do cabeçalho de uma seção;
  • header: é o cabeçalho de uma seção contendo os títulos e ajudas à navegação ou à introdução de uma seção (documento, seção ou artigo) que podem ser agrupados pelo [hgroup];
  • footer: é o rodapé da seção (documento, seção ou artigo), para que se coloque dados do autor, data de publicação etc;
  • figure: representa o agrupamento de itens que necessitem de um título, como imagens, vídeos ou até textos... e seu título, claro;
  • figcaption: o título do agrupamento do [figure];
A idéia é que ao invés de ficar usando um monte de [div] com a "semanticalização" destes blocos embutida nos atributos 'class' ou 'id', houvessem elementos nativos que representassem estes blocos ou seções do documento.
Obviamente um [header] não vai conter um [header], assim como um [footer], [nav], [aside] etc. Acredito que somente o [section] pode conter um [section].
O HTML5 promete simplificar a estrutura do documento, fazendo dela auto-explicativa e direta.

Exemplo de uma página HTML5, visando a estrutura:



<!doctype html>
<html lang="pt">
<head>
<title>Titulo</title>
</head>
<body>

<header>
<h1>Titulo, Logo etc</h1>
</header>
<nav>
<ul>
<li><a href="#">Blog</a></li>
<li><a href="#">Sobre</a></li>
<li><a href="#">Contato</a></li>
</ul>
</nav>
<section>
<article id="artigo2">
<header>
<h2>Artigo 2 do Blog</h2>
<p>Publicado em <time datetime="2010-03-11T16:22:45-03:00">11/03/2010</time></p>
</header>
<section>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod tellus eu orci imperdiet nec rutrum lacus blandit. Cras enim nibh, sodales ultricies elementum vel, fermentum id tellus. Proin metus odio, ultricies eu pharetra dictum, laoreet id odio...</p>
</section>
<footer>
<p><a href="#">3 cometarios</a><p>
</footer>
</article>
<article id="artigo1">
<header>
<h2>Artigo 1 do Blog</h2>
<p>Publicado em <time datetime="2010-03-08T20:15:29-03:00">08/03/2010</time></p>
</header>
<section>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod tellus eu orci imperdiet nec rutrum lacus blandit. Cras enim nibh, sodales ultricies elementum vel, fermentum id tellus. Proin metus odio, ultricies eu pharetra dictum, laoreet id odio...</p>
</section>
<footer>
<p><a href="#">3 cometarios</a><p>
</footer>
</article>
</section>
<aside>
<header>
<h1>Minha Barra Lateral</h1>
</header>
<ul>
<li><a href="#">Blog</a></li>
<li><a href="#">Sobre</a></li>
<li><a href="#">Contato</a></li>
</ul>
<footer>
<p>5 pessoas online<p>
</footer>
</aside>
<footer>
<p>Produzido por <a href="#">Fulano</a></p>
<p><small>Copyleft...</small></p>
</footer>

</body>
</html>


segunda-feira, março 08, 2010

Diferenças do HTML5 / HTML4 parte 1 - Geral

Depois de ler alguns artigos, ler documentação oficial e agora o texto da W3C sobre a diferença do HTML 5 com relação ao 4, blogs etc, incluindo bom senso de padronização, farei a seguir um resumo só com a real diferença da especificação atual (que ainda não está fechada).
Este primeiro post refere-se ao documento em geral.

#1 - XML: Trate como um documento XML - incluindo suas regras de estrutura do documento. Apesar de permitir certas displicências, aplique as boas práticas do XHTML sempre que puder no seu documento HTML:
  • tags em minúscula;
  • atributos com valores e com aspas;
  • tags vazias finalizadas com "/";
  • etc.

#2 - DOCTYPE: Para dizer que um documento é HTML, basta, no início do documento:
<!DOCTYPE html>

#3 - Tag HTML: Pode ou não possuir a tag [html], mas é altamente recomendável.

#4 - Idioma: Recomenda-se informar o idioma do documento. Para isso use a tag [html] (dã...):
<html lang="pt">

#5 - Charset: Para informar a codificação de caracteres, basta, no [header]:
<meta charset="UTF-8" />

#6 - Outros ML: O HTML5 permite MathML e SVG com as tags [math] e [svg] especificamente:
<svg><circle r="50" cx="50" cy="50" fill="green" /></svg>

#7 - Microdata: Pode-se usar microdata, se referindo com o atributo "itemscope" dentro de um elemento pai, e especificando os itens dentro dele. Os atributos são: "itemid", "itemprop", "itemref", "itemscope" e "itemtype".

#8 - Entidades: O tratamento das entidades e símbolos continuam os mesmos (& + entidade ou [# + ascii] + ;).

Exemplo (mescla de alguns exemplos da W3C):


<!doctype html>
<html lang="pt">
<head>
<meta charset="UTF-8" />
<title>Exemplo HTML5 - parte 1</title>
</head>
<body>
<section>
<p>
A green circle:
<svg> <circle r="50" cx="50" cy="50" fill="green" /> </svg>
</p>
</section>
<section itemscope itemtype="http://blablabla.org/galera">
<h1 itemprop="name">Astrogildo</h1>
<p itemprop="desc">Astrogildo - um cara legal!</p>
<img itemprop="img" src="img/astro.jpg" alt="Falhou..." title="Astrogildo na rave" />
</section>
</body>
</html>

segunda-feira, fevereiro 22, 2010

Tabela de dia do ano (mainframe julian day)

Em algumas aplicações é interessante utilizar o dia do ano (999) ao invés de dia/mês (9999).
Você consegue ver a tabela para anos bissestos ou não:


segunda-feira, fevereiro 01, 2010

Melhores albergues do mundo

Costuma viajar? Acampar? Ficar em hostel (albergue)?
No HostelWorld.com saiu o Oscar 2009 dos albergues: Hoscar.
A matéria do site (http://www.hostelworld.com/travel-features/124/best-hostels-of-2009/) ainda lista os melhores do mundo, por continente e categoria, que segue abaixo:

The winners of the coveted Hoscars were:

1. Traveller's House, Lisbon, Portugal
2. Rossio Hostel, Lisbon, Portugal
3. Living Lounge Hostel, Lisbon, Portugal
4. Academy Hostel, Florence, Italy
5. Carpe Noctem, Budapest, Hungary
6. The Riverhouse Backpackers, Cardiff, Wales
7. Lisbon Lounge Hostel, Lisbon, Portugal
8. Greg & Tom Hostel, Krakow, Poland
9. The Naughty Squirrel Backpackers Hostel, Riga, Latvia
10. Lisboa Central Hostel, Lisbon, Portugal

Top Hostels by Continent:

North America
1. ACBB Hostel Niagara, Niagra Falls, Canada
2. USA Hostels San Diego, USA
3. Clarence Castle, Toronto, Canada

Latin America
1. Hostel Lao, Mendoza, Argentina
2. America del Sur Hostel Buenos Aires, Argentina
3. Hostel Estoril,Buenos Aires, Argentina

Africa
1. Dahab Dorms, Dahab, Egypt
2. Riad Massine II, Marrakech, Morocco
3. The Backpack & Africa Travel Centre, Cape Town, South Africa

Asia
1. Sitting On The City Walls Courtyard House, Beijing, China
2. Chinese Box Courtyard Hostel, Beijing, China
3. Nagasaki International Hostel AKARI, Nagasaki, Japan

Oceania
1. Jailhouse Accommodation, Christchurch, New Zealand
2. Sydney Central YHA, Sydney, Australia
3. Backpack Oz, Adelaide, Australia

Special Category Awards were also given to the following hostels

1. Cleanest Hostel: Academy Hostel, Florence, Italy
2. Most Secure Hostel: Travellers House, Lisbon, Portugal
3. Most Fun Hostel: Carpe Noctem, Budapest, Hungary
4. Hostel with Best Location: Academy Hostel, Florence, Italy
5. Best Staff: The Riverhouse Backpackers, Cardiff, Wales
6. Hostel with Best Character: Living Lounge Hostel, Lisbon, Portugal
7. Best Small Hostel [Max 50 beds]: Hostel Majdas, Mostar, Bosnia & Herzegovina Rossio Hostel, Lisbon, Portugal Giovanni's Home, Naples, Italy
8. Best Large Hostel [Min 500 beds]: H.I. Chicago, Chicago, USA Wake Up! Sydney Central, Sydney, Australia smartcityhostels Edinburgh, Scotland
9. Most Improved Hostel: The South Beach Hostel, Miami, USA

Best Hostel Chain

1. Wombats, Austria and Germany
2. HI USA
3. Astor Hostels


quinta-feira, janeiro 28, 2010

Google Gears e Firefox

Hoje a versão 3.6 do Firefox não tem o suporte do Gears. A versão 3.5.7... também não.
Se há necessidade de utilizar a API você deve:
  • instalar o Google Gears: http://gears.google.com/;
  • reinicie o navegador;
  • se não funcionar ou não aparecer "Configurações do Gears" no menu Ferramentas do navegador (o que não é dificil de acontecer), instale este componente (gears-win32-opt-0.5.25.0.xpi) que faz a configuração entre os dois: http://groups.google.com/group/gears-users/msg/70f164020c0f8f4e;
  • reinicie o navegador (sempre que se instala um componente há necessidade de reiniciar o browser);
  • pronto - assim comigo funcionou (na versão 3.5.7).

Se interessar, o caminho dos dados armazenados offline pelo Gears fica em:

Windows Vista
  • Internet Explorer: C:\Users\\AppData\LocalLow\Google\Google Gears for Internet Explorer
  • Firefox: Database files are stored in the user profile directory. C:\Users\\AppData\Local\Mozilla\Firefox\Profiles\{PROFILE}.default\Google Gears for Firefox
  • Google Chrome: Database files are stored in the user profile directory. C:\Users\\AppData\Local\Google\Chrome\User Data\Default\Plugin Data\Google Gears
Windows XP
  • Internet Explorer: C:\Documents and Settings\\Local Settings\Application Data\Google\Google Gears for Internet Explorer
  • Firefox: Database files are stored in the user profile directory. C:\Documents and Settings\\Local Settings\Application Data\Mozilla\Firefox\Profiles\{PROFILE}.default\Google Gears for Firefox
  • Google Chrome: Database files are stored in the user profile directory. C:\Documents and Settings\\Local Settings\Application Data\Google\Chrome\User Data\Default\Plugin Data\Google Gears
Mac OS X
  • Firefox: Database files are stored in the user profile directory. Users//Library/Caches/Firefox/Profiles/{PROFILE}.default/Google Gears for Firefox
  • Safari: ~/Library/Application Support/Google/Google Gears for Safari

Linux Firefox: Database files are stored in the user home directory. /.mozilla/firefox/{PROFILE}.default/Google Gears for Firefox

Microsoft Windows Mobile Internet Explorer: Database files are stored in the Application Data directory. \Application Data\Google\Google Gears for Internet Explorer


No trabalho, por exemplo, os dados estão em:
C:\Documents and Settings\\Configurações locais\Dados de aplicativos\Mozilla\Firefox\Profiles\.default\Google Gears for Firefox

Abraço!

sexta-feira, dezembro 04, 2009

Software Livre ou não?

Essa questão está na cabeça de muita gente, e dizer que software livre é o futuro, para mim, é ser radical demais.
Há uma nova tendência em que o dinheiro do nosso mundo capitalista circula através do serviço prestado, e não dos produtos diretamente. Mas as duas realidades estarão presentes lado a lado - talvez uma com mais força que a outra.
Na realidade, o que quero dizer é que poucas coisas me tiram do sério e uma delas é ver gente falando o que não sabe em relação, normalmente, ao software livre - pura ignorância originária do desconhecimento ou da dificuldade de assimilar ou dar o braço a torcer. Mas isso acontece também dos defensores extremos de software livre com relação ao software proprietário e ao mundo que nos cerca.
Eu em cima do muro? Não. Prefiro software livre, porém no note tenho Windows. Contraditório? Também não. Já veio na máquina (não é pirata) e uso softwares que só tem para este sistema. Ah, se as aplicações comerciais e jogos fossem disponíveis para o pinguim... O Ubuntu está sensacional, aliás o Kubuntu, pois apesar do Gnome ser muito bom, o KDE me chama mais atenção. É questão de gosto e posso mudar pro gerenciador de janelas que quiser - isso é ser livre, né? E o Fedora que sempre vem com as últimas versões das aplicações...
Aí, hoje, ouço um colega do trabalho comentando que o Linux o faz lembrar do trabalho dele anos atrás, pois as linhas de comando lembram o DOS (ele tem a mesma idéia do começo dos anos 90). Outro comentário é que "eles" tentam copiar o Windows, mas não conseguem... "um dia quem sabe...". Será que ele sabe mesmo quem copia o quê? O shell é muito mais coerente e fiel ao Unix do que o DOS (que se baseou também no Unix); a cada novidade do Windows na parte gráfica me faz recordar anos atrás do KDE e/ou o Mac OS(X). Quando a MS veio com transparências nas janelas, Power Shell, agora com design clean, diversas outras frescurinhas e veio falando em novidade... o pior é que as pessoas acreditam que é um lançamento inédito que nenhum outro "concorrente" possui. É uma pena, mas o Windows está estagnado e ninguém está conseguindo evolui-lo, diferentemente do Linux, que está ganhando espaço cada vez mais.
Software livre é gestão do conhecimento em nível global, e é isso que me fascina! Sou a favor de sua evolução, mas sei que ainda deve em muitos aspectos. Também sei que está muito a frente em outros, que muitas pessoas não sabem assim como meu colega. O mundo é injusto. Isso me entristece.
Apesar de, como eu disse, usar Windows, sei que ele é como sessão da tarde (as funcionalidades são filmes): mesmo que você não tenha assistido ainda, pode ter certeza que já foi lançado há muito tempo.
Apesar do radicalismo sempre presente nas discussões, cada um é cada um e essa liberdade é direito de todos.