quinta-feira, novembro 23, 2006
Problemas comuns na validação do HTML
Muito bom para quem erra as mesmas coisas sempre como eu! ;P
sexta-feira, novembro 17, 2006
Invasão das formigas
Aí procurei algumas dicas na internet e achei essa, que é mais específica para invasão em aparelhos eletrônicos, mas serve para todo o resto:
http://www.boadica.com.br/layoutdica.asp?codigo=78
Produtos:As formigas estão invadindo seu equipamento?
Esta com certeza é uma BoaDica. Você pode estar passando por um problema sem saber.
Algumas formigas (às vezes cupins e aranhas) acham o ambiente interno de um micro um bom lugar para construir uma colônia. Há quem diga que seja pelo calor que o micro proporciona e outros pelo material empregado na confecção das placas. A verdade é que elas entram no micro, no vídeo cassete, na televisão e sabe Deus mais aonde. A aparência supostamente inofensiva desta invasão pode ter um custo bem alto para quem hospeda estes pequenos visitantes, pois uma pane generalizada pode ser o resultado.
Bem, os motivos e as causas não importam e sim a solução!
Vá para a sua cozinha, pegue um pouco de cravo e coloque dentro do seu micro e se quiser aproveitar o embalo espalhe pelos lugares onde elas passam ou estão. O cravo, além de servir para dor de dente (mais uma dica), serve para despejar os indesejáveis visitantes que, por experiência própria deste que vos escreve, não gostam de cravo.
Tome cuidado para não travar os ventiladores da máquina com os pedaços de cravo, certo?
Outro dia estivemos discutindo sobre este assunto aqui no Fórum do BoaDica, e algumas experiências no assunto foram trocadas! Na realidade, o principal fator que afugenta as formigas é o odor forte, que pode ser conseguido de diversas maneiras. Podemos utilizar:
Pedaços de Cravo - espalhados pelo gabinete
Pastilhas de Cânfora - coladas com um pedaço de fita dupla-face. Coloque a pastilha de cânfora em alguns locais estratégicos, como na parte da entrada de ar frontal do gabinete, perto da traseira do gabinete, no local onde são colocadas as placas, perto da fonte, ou outro lugar de sua preferência. Além de afastar os insetos ainda deixa um odor agradável no ambiente. Você consegue encontrar essas pastilhas de cânfora em lojas esotéricas, tipo Mundo Verde, aqui no Rio. O pacotinho com 8 pastilhas custa uns R$ 6,00
Sachê de ingredientes odoríficos. Como fazer: Arrume um pedaço de tecido ou uma folha de feltro fino, coloque alguns cravos ou outros ingredientes de odor forte, mais ou menos a quantidade de um sachê, daqueles comprados em supermercado. Costure o feltro ou o tecido formando um "travesseiro" ou uma pequena bolsa e coloque dentro do gabinete. Elas vão desaparecer do PC.
- Colosso Gel
- KOTRINE
- Formibel
sexta-feira, novembro 10, 2006
Natural/ADABAS - Dicas 1
Bom, se você está lendo isso aqui, provavelmente você trabalha com ele, porque ninguém em sã consciência leria essa postagem de bobeira ;P
Vamos lá!
Alfa para numérico:
Para definir as variáveis usamos DEFINE DATA. Depois dele e antes do END-DEFINE, você põe todas as variáveis que você vai usar, além de LOCALS e GLOBALS com as definições de variáveis dentro delas.
No Natural você tem que dizer o tamanho das variáveis e se elas são alfa-numéricas (A) ou numéricas (N). existem outros tipos, mas vamos ficar por aqui.
Veja um exemplo bobo:
DEFINE DATA
LOCAL
01 #NOME (A30)
01 #TELEFONE (N10)
01 REDEFINE #TELEFONE
02 #DDD-TELEFONE (N02)
02 #NUM-TELEFONE (N08)
01 #TELEFONE-ALFA (A10)
END-DEFINE
De alguma maneira recebemos do usuário pela variável telefone-alfa e o usuário não digita os 10 caracteres pedidos (A10). Fica:
O valor de #TELEFONE-ALFA é '99123456__', com 2 espaços no final.
Nós, humanos, entendemos que o DDD é 99 e o telefone é 123456. Beleza. Mas ao passar o conteúdo para a variável numérica #TELEFONE ficaria com 0099123456. Um conteúdo alfa-numérico é alinhado por padrão para a esquerda preenchendo com espaços, e o numérico para a direita preenchendo com zeros.
Agora imagina a situação de você guardar isso no file e depois quiser pegar só o DDD desse número... vai vir 00; e se pegar o número, vai vir 99123456.
Por isso tome cuidado com a passagem entre variáveis, critique com máscara, valide o conteúdo (o programa pode "abendar" - ABNORMAL END - se passar uma letra para uma variável numérica), cuidado com variáveis em branco que são convertidas para 0 etc.
COMPRESS:
Quando trabalhamos com arquivos de leiaute predefinido, não podemos deslocar nada.. temos que ter o nome com 30 caracteres e pronto... o que sobrar fica lá em branco.
Esse cara junta textos e variáveis em uma variável para o conteúdo final. O comando básico é:
COMPRESS 'TEXTO' #VARIAVEL1 #VARIAVEL2 INTO #VARIAVEL3
ou seja, ele junta 'texto', o conteúdo da variável 1 e da variável 2 e joga na variável 3. Maravilha!
Mas se eu tiver uma variável alfa de tamanho 30 e tiver usado somente 12, os 18 espaços vão ser perdidos pelo COMPRESS. Para juntar com os espaços também, use:
COMPRESS FULL #VAR1 #VAR2 INTO #VAR3
Mesmo assim ocorre outro problema. Ele deixa um espaço entre as variáveis... para isso use:
COMPRESS FULL #VARABACATE #VARMAMAO INTO #VARPERA LEAVING NO SPACE
Ufa! Você pode fazer isso ou criar uma variável de retorno redefinida e jogar os conteúdos nessas redefinições. já apanhei por causa disso...
FIND errado:
O programa com essa find estava consumindo muita CPU:
FIND (1) MINHA-VIEW WITH
SUPER-S3 GE #CHAVE-INICIAL AND
SUPER-S3 LE #CHAVE-FINAL
O programa fazia duas verificações, gerando como se fosse duas listas. O find seguinte resolveu o problema, que passou a utilizar metade dos recursos utilizados pelo primeiro:
FIND (1) MINHA-VIEW WITH
SUPER-S3 EQ #CHAVE-INICIAL THRU #CHAVE-FINAL
Coisinha boba, mas causa um problema quando o programa é bem requisitado....
terça-feira, novembro 07, 2006
Biografias Online
terça-feira, outubro 17, 2006
Requisitos - Aula 2
Olá! Agora estou postando a segunda aula de requisitos da série de apresentações que fizemos. Claro que boa parte do material foi apresentado oralmente frente a uma apresentação... o que segue é um resumo da seunda aula, mas que pode ajudar bastante. Na empresa temos um processo baseado no RUP, ou seja, uma customização, por isso pode have algo diferente do que você vê por aí em termos de artefatos, mas os conceitos são os mesmos! Abraço!
Resumo Requisitos – Aula 2
Artefato
Artefato é tudo aquilo que é gerado a partir de nosso trabalho a fim de documentação; é o produto gerado durante o desenvolvimento de software. Podemos citar como exemplo de artefatos o documento de visão, plano de projeto, relatórios de acompanhamento, diagramas de caso de uso, entre outros. Esses artefatos podem ser tanto consumidos quanto produzidos, resultantes da execução de uma atividade, estando presente em todo o ciclo de vida do desenvolvimento. Devemos evitar a negligência da documentação, fato que ocorre por diversos motivos e fazem com que os desenvolvedores deixem-na em segundo plano.
Glossário
Mesmo sendo produto da atividade de “Elicitar Requisitos”, pode ser atualizado a qualquer momento do projeto. Por alguns termos do projeto serem de difícil interpretação, o glossário surge para facilitar a comunicação e capturar um vocabulário comum para que qualquer pessoa possa ler e entender a documentação, evitando desentendimentos. Os termos do glossário podem estar agrupados e organizados de diversas formas, normalmente por ordem alfabética ou por assunto. Ex:
Acordo de Barreiras Técnicas (TBT)
Acordo multilateral que visa eliminar as barreiras técnicas, que dificultam o comércio internacional. Foi instituído na Rodada Uruguai e é gerenciado pela OMC.
Documento de Visão
Pertencente à atividade “Elicitar Requisitos”, o documento de visão tem o propósito de expor as necessidades e seus motivos, e as funcionalidades gerais (soluções para as necessidades), objetivos e restrições da aplicação. Há dois tipos de documento de visão: o de projeto, que documenta as necessidades e funcionalidades alteradas ou afetadas no projeto, ou de sistema, de detém todas as necessidades e funcionalidades do sistema e deve ser alterado/atualizado a cada projeto.
A diferença física entre os dois tipos de projeto, é que o documento de visão de projeto possui:
- Posicionamento
- Partes interessadas
- Restrições
- Expectativa de entrega
Na composição de um documento de visão observamos:
- O cenário, que nada mais é que a situação atual com que se encontra o cliente e o motivo pela construção do sistema.
- A oportunidade de negócio oferece uma visão do que o projeto proporcionará, em virtude do cenário atual.
- As partes interessadas (stakeholders) são todos aqueles envolvidos ou beneficiados pelo projeto e pelo sistema, influenciando em seu desenvolvimento (cliente, desenvolvedores)
- Os atores são todos os que utilizam diretamente o sistema que está sendo especificado, podendo ser tanto uma pessoa quanto uma máquina ou um outro sistema (usuário [sistema específico], usuário Polícia Federal, impressora, [sistema de autenticação central])
- As necessidades e funcionalidades que, como já abordado, oferecem, respectivamente, uma visão dos problemas ou motivos que o cliente possui e as soluções para isto.
Modelo de Diagrama
Descreve os diagramas da UML (Unified Modeling Language) que o sistema irá possuir. Mantém a conexão entre os casos de uso com os diagramas de classe e de interação, oferecendo rastreabilidade entre eles. Os diagramas são elaborados utilizando a ferramenta Rational Rose.
Os casos de uso especificam o comportamento do sistema a ser desenvolvido, as funções da aplicação que caracterizam as funcionalidades do sistema, mas não a maneira com que será implementado. O diagrama de caso de uso é descrito como na UML, ou seja, tem a finalidade de facilitar o entendimento do grupo de desenvolvimento fazendo com que sua interpretação seja correta e sem ambigüidade dos modelos gerados por outros analistas.
A interação entre o caso de uso e um ator ou outro caso de uso é feita por uma linha ou seta (que simboliza quem inicia).
No caso de uso temos os relacionamentos de:
- Inclusão, que sugere uma ação obrigatória do caso de uso chamado no caso de uso base. Este tipo de relacionamento, que evita escrever o mesmo comportamento várias vezes, é simbolizado por uma seta tracejada partindo do caso de uso base para o caso de uso chamado; opcionalmente, mas por padrão, utiliza-se o estereótipo <
> ao lado da seta. - Extensão, que sugere uma ação opcional/condicional do caso de uso estendido durante as ações do caso de uso base. Este tipo de relacionamento é também representado por uma seta tracejada, porém, parte do caso de uso estendido para o caso de uso base; também utiliza-se o estereótipo <
>. - Generalização, indica que um caso de uso ou um ator possui características comuns a outros, e assim estes, chamados de “pai” (generalizado), são referenciados por uma seta vazia (triângulo) vindas dos casos de uso ou atores “filhos” (especializados) que possuem características ou comportamentos próprios, mas que herdam outras do elemento geral.
Relação de Casos de Uso
Apesar de não ser obrigatório, é um documento que possui a representação gráfica de todos os casos de uso que compõem o sistema, além do nome e a descrição sucinta de cada caso de uso presente no diagrama.
As informações nele presentes podem ser encontradas nos artefatos Modelo de Diagrama e Matriz de Atributos (Casos de Uso).
As informações contidas neste artefato podem ser obtidas automaticamente pelas ferramentas Rose (Diagrama de Interação) e RequisitePro – Matriz de Atributos (Casos de Uso). Desta forma, para que não haja o risco de inconsistência devido à cópia de informações, será opcional para os que estiverem utilizando as ferramentas acima citadas. Pode também ser inserido um link para o diagrama no Rose.
Esse documento será utilizado para relação de todos os casos de uso. Os casos de usos já especificados em ECU não estarão marcados como requisitos de [Ferramenta para Gestão de Requisitos]. Marcaremos apenas os requisitos do legado, para a composição de rastreabilidade mínima.
segunda-feira, outubro 09, 2006
Acidente com avião da Gol
IML identifica cinco mortos em acidente com avião da Gol
da Folha Online
da Folha de S.Paulo
O IML (Instituto Médico Legal) de Brasília informou nesta quinta-feira ter identificado cinco corpos de vítimas do acidente com o Boeing da Gol, ocorrido no último dia 29, em Mato Grosso. Os 154 ocupantes do avião morreram na queda, e, desde a última quarta (3), 18 corpos já chegaram ao instituto.
Foram identificados os corpos de Atila Rezende, Elcio Anchieta, Francisco Chagas Loiola, José Trindade e Luiz Albano Custódio. Impressões digitais e informações fornecidas pelos parentes auxiliam os trabalhos.A lista dos passageiros já está sendo divuldada.
O IML de Brasília ainda aguarda que São Paulo, Rio de Janeiro e Amazonas disponibilizem os prontuários datiloscópicos completos das vítimas. A diretora de Comunicação da Polícia Civil de Brasília, Valéria Martirena, afirma que os dados poderão ser usados para identificar os corpos que estiverem em melhores condições.
Veja as fotos exclusivas
Militares resgatam corpos em área onde caiu o Boeing da Gol, em MT, e preparam traslado
Militares resgatam corpos em área onde caiu o Boeing da Gol.
Segundo ela, para esse tipo de identificação são necessárias as dez impressões digitais, e não apenas uma. Em 30 formulários da documentação que o IML recebeu só consta a impressão digital de polegares.
Vitimas
Na terça-feira, o IML recebeu os primeiros corpos --que haviam sido resgatados no domingo (1º). Os legistas confrontaram as digitais das vítimas --um homem e uma mulher-- com os 75 conjuntos de digitais que estão à disposição da Polícia Civil do Distrito Federal, mas o resultado foi negativo.
Outros 16 restos mortais recolhidos pelos militares da FAB (Força Aérea Brasileira) na mata ao longo dos últimos dias chegaram na noite de ontem ao IML e deverão ser periciados a partir de hoje.
Os dois corpos analisados estavam com vários ossos quebrados e sem condições de reconhecimento pessoal. Ao analisar os traumas internos nos corpos, os peritos tentarão estabelecer em que momento do acidente ocorreram as mortes.
Identificação
No estacionamento do IML de Brasília foi montada uma operação de emergência para receber os corpos das vítimas e fazer os exames de identificação e de necropsia. Três barracas das Forças Armadas usadas em situações de guerra serão utilizadas para a realização de até sete necropsias simultâneas.
Para saber quem são as vítimas, caso elas não sejam identificadas pelos confrontos de impressões digitais, será realizada uma análise antropológica de cada uma delas. Esse confronto será feito com base em informações biométricas e físicas passadas pelos parentes dos 154 mortos.Veja aqui a lista dos passageiros.
A última opção na tentativa de identificar as pessoas será fazer exame de DNA que, em média, demora até cinco dias.
Acidente
O Boeing 737/800 da Gol realizava o vôo 1907, entre Manaus e o Rio, com escala em Brasília. A aeronave caiu depois de ser atingida por um Legacy, de fabricação da Embraer, que ia de São José dos Campos (91 km a nordeste de São Paulo) para os Estados Unidos com escala em Manaus.
As 155 pessoas --149 passageiros e seis tripulantes-- que estavam no Boeing morreram. O Legacy era ocupado pelo piloto e co-piloto --americanos--, dois funcionários da empresa que havia comprado o avião e um repórter do "NY Times", além de dois funcionários da Embraer. Todos sobreviveram sem ferimentos.
A Aeronáutica informou na quarta-feira (4) que 20 militares do Centro de Instrução de Guerra na Selva, do Exército, serão enviados para auxiliar os trabalhos de resgate dos corpos. A presença dos militares do Exército havia sido reivindicada pela Comissão de Familiares dos Passageiros do Vôo 1907 à FAB, que coordena a operação.
A PF (Polícia Federal) abriu um inquérito para investigar as responsabilidades no acidente que envolveu o Legacy e o Boeing da Gol. Por meio de sua assessoria de imprensa, a PF informou que já recebeu os documentos recolhidos em investigação iniciada pela Polícia Civil. Eles serão analisados pelo delegado Renato Sayão e, de acordo com a Polícia Federal, as responsabilidades pelo acidente deverão ser apontadas apenas depois do resultado das caixas pretas.
Com Agência Brasil
Não cliquem.. muito menos executem...
quinta-feira, setembro 21, 2006
O desemprego e as vagas para TI
Leiam a reportagem em http://www.terra.com.br/istoedinheiro/470/ecommerce/aqui_estao_vagas.htm
Abraço!
quarta-feira, agosto 09, 2006
Teclas de Atalho
ÁREA DE TRABALHO
CTRL + A: Selecionar tudo
CTRL + ESC: Exibir o menu Iniciar
CTRL ao arrastar um item: Copiar um item selecionado
CTRL + SHIFT ao arrastar um item: Criar um atalho para um item selecionado
CTRL + ALT + F1: Ver informações do sistema
ALT + ENTER: Exibir as propriedades do item selecionado
ALT + F4: Fechar o item ativo ou sair do programa ativo
ALT + TAB: Alternar entre janelas abertas
ALT + ESC: Percorrer itens na ordem em que foram abertos
F2: Renomear um item selecionado
F3: Procurar um arquivo ou uma pasta
F4: Abrir lista da barra de endereços ¿ pasta aberta
F5: Atualizar a janela ativa
SHIFT + F10: Equivale ao botão direito do mouse
SHIFT ao inserir um CD: Evitar que o CD seja executado automaticamente
SHIFT + DEL: Excluir sem colocar na Lixeira
Print Screen: Captura tela, para colar em programas como o Paint
Alt + Print Screen: Captura somente janela ativa
Janela Voadora (JV) [Janela Voadora = botão iniciar]: Exibir ou ocultar o menu Iniciar
(JV) + BREAK: Exibir a caixa de diálogo Propriedades do sistema
(JV) + D: Mostrar a área de trabalho
(JV) + M: Minimizar todas as janelas
(JV) + Shift + M: Restaurar as janelas minimizadas
(JV) + E: Abrir Meu computador
(JV) + F: Procurar um arquivo ou uma pasta
CTRL+ (JV) + F: Procurar computadores
(JV) + F1: Exibir a Ajuda do Windows
(JV) + R: Abrir a caixa de diálogo Executar
Botão Editar: Equivale ao botão direito do mouse
(JV) + U: Abrir o Gerenciador de utilitários
ATALHOS DE TECLADO PARA ACESSIBILIDADE
SHIFT direita por oito segundos: Ativar e desativar as teclas de filtragem
ALT esq. + SHIFT esq. + PRINT SCREEN: Ativar e desativar o Alto contraste
ALT esq. + SHIFT esq. + NUM LOCK: Ativar e desativar as teclas para mouse
SHIFT cinco vezes: Ativar e desativar as teclas de aderência
NUM LOCK por cinco segundos: Ativar e desativar as teclas de alternância
Janela Voadora + U: Abrir o Gerenciador de utilitários
INTERNET EXPLORER
Alt + (seta pra cima) ou (seta pra baixo) na janela de organizar favoritos: Move item para cima ou para baixo
Alt + (seta pra direita): avança para página seguinte
Alt + (seta pra esquerda): Volta para página anterior
Alt + Home: Abre página inicial do Internet Explorer
Ctrl + B: Abre janela para organizar Favoritos
Ctrl + D: Adiciona página à pasta Favoritos
Ctrl + F: Localiza palavra na página
Ctrl + H: Ativa barra com histórico na lateral da janela
Ctrl + I: Ativa barra com sites favoritos na lateral da janela
Ctrl + N: Abre nova janela do navegador
Ctrl + O ou L: Abre campo para digitar e ir a nova página da rede ou abrir arquivo
Ctrl + Enter : Adiciona (http://www. - antes) - (adiciona .com - depois) de palavra digitada na barra de endereços. Ou seja, ela preenche automaticamente, na barra de endereços do "Internet Explorer", o endereço de uma palavra digitada. Se você digita yahoo e pressiona Ctrl + Enter, o navegador procura o endereço: http://www.yahoo.com
Esc: Interrompe a transmissão de uma página quando está sendo carregada ou a música de fundo quando existe e a página já está carregada.
F4: Exibe histórico da barra de endereços
F5: Atualiza página recarregando-a
F6: Alterna entre frames de uma página e barra de endereços
F11: Alterna entre visualização normal e tela cheia
OUTLOOK EXPRESS
Ctrl + D: Apaga mensagem
Ctrl + E: Localiza pessoa no catálogo de endereços
Ctrl + F: Encaminha mensagem
Ctrl + J: Vai à próxima pasta com mensagens não lidas
Ctrl + M: Enviar e receber mensagens
Ctrl + N: Nova mensagem
Ctrl + Q: Marca mensagem como lida
Ctrl + R: Responde ao autor
Ctrl + S: Salva mensagem
Ctrl + Enter: Quando conectado e com destinatário definido, envia mensagem
Ctrl + F3: Exibe código-fonte da mensagem
Ctrl + Shift + A: Marca todas mensagens de uma pasta como lidas
Ctrl + Shift + B: Abre catálogo de endereços
Ctrl + Shift + E: Abre janela para criar nova pasta
Ctrl + Shift + F: Localiza mensagem
Ctrl + Shift + N: Cria nova entrada no catálogo de endereços
Ctrl + Shift + O: Abre opções do Outlook Express
Ctrl + Shift + R: Responder a todos
Esc: Fecha mensagem
TECLAS DE TEXTO
Menu Arquivo
CTRL + O: Novo
CTRL + A: Abrir
CTRL + B: Salvar
CTRL + P: Imprimir
Menu Editar
CTRL + Z: Desfazer
CTRL + R: Repetir
CTRL + X: Recortar
CTRL + C: Copiar
CTRL + V: Colar
CTRL + T: Selecionar todo o texto
CTRL + L: Localizar
CTRL + U: Substituir
CTRL + Y: Ir para
Outros
CTRL + (seta pra direita): Mover o cursor para o início da próxima palavra
CTRL + (seta pra esquerda): Mover o cursor para o início da palavra anterior
CTRL + (seta pra baixo): Mover o cursor para o início do próximo parágrafo
CTRL + (seta pra cima): Mover o cursor para o início do parágrafo anterior
CTRL + F4: Fechar documento ativo/janela de programa
TECLAS PARA FORMATAR CARACTERES E PARÁGRAFO
CTRL + SHIFT + >: Aumenta o tamanho da letra
CTRL + SHIFT + <: Dminui o tamanho da letra
CTRL + SHIFT + A: Maiúsculas
CTRL + SHIFT + W: Sublinhado mas só em palavras
CTRL + SHIFT + D: Duplo sublinhado
CTRL + SHIFT + K: Maiúsculas pequenas
CTRL + SHIFT + *: Visualiza caracteres não imprimíveis
CTRL + SHIFT + C: Copia formatos
CTRL + SHIFT + V: Cola formatos
CTRL + ]: Aumenta o tamanho da letra um ponto
CTRL + [: Diminui o tamanho da letra um ponto
CTRL + D: Formatação de fontes
CTRL + N: Negrito
CTRL + S: Sublinhado
CTRL + I: Itálico
CTRL + BARRA ESPAÇO: Remove formatação manual
CTRL + Q: Parágrafo simples abaixo
CTRL + 1: Define espaçamento simples entre linhas
CTRL + 2: Define espaçamento duplo entre linhas
CTRL + 5: Define espaçamento entre linhas de 1,5
CTRL + zero: Remove um espaço entre linhas que antecede um parágrafo
CTRL + J: Justifica um parágrafo
CTRL + E: Centraliza Parágrafo
CTRL + G: Parágrafo à direita
CTRL + M: Avança um parágrafo a partir da esquerda
CTRL + SHIFT + M: Remove um avanço de parágrafo à esquerda
CTRL + SHIFT + J: Cria um avanço pendente
CTRL + SHIFT + T: Reduz um avanço pendente
CTRL + SHIFT + S: Aplica sublinhado
CTRL + SHIFT + N: Aplica um estilo normal
CTRL + SHIFT + L: Aplica o estilo "Lista"
ALT + CTRL + K: Inicia formatação automática
ALT + CTRL + 1: Aplica o estilo "Título 1"
ALT + CTRL + 2: Aplica o estilo "Título 2"
ALT + CTRL + 3: Aplica o estilo "Titulo 3"
Alt + Ctrl + F: Insere nota de rodapé
Alt + Ctrl + I, O, P ou N: Muda estilo de visualização da página
Alt + Ctrl + Y: Vai para início da página seguinte
Alt + Ctrl + M: Insere comentário
Ctrl + =: Aplica subscrito
Ctrl + Shift + (+): Aplica sobrescrito
Ctrl + End: Vai para fim do documento
Ctrl + Del: Apaga palavra seguinte
SHIFT + F1: Remove formatação de texto
Shift + F3: Aplica letras maiúsculas em todo o texto selecionado
TECLAS DE FUNÇÕES
F1: Ajuda; Ajuda "On line"; Assistente do Office
F4: Repetir a última ação
F5: Comando "ir para" (menu Editar)
F7: Ortografia e gramática (menu Ferramentas)
F12: Salvar como
SHIFT + F1: Ativa interrogação da ajuda
SHIFT + F3: Altera as letras maiúsculas minúsculas
SHIFT + F4: Repete uma ação de localizar e/ou "ir para"
SHIFT + F5: Desloca-se para uma revisão anterior
SHIFT + F7: Dicionário de sinônimos (menu Ferramentas)
SHIFT + F10: Visualiza o menu de atalhos/botão direito do mouse
CTRL + F2: Vai para a tela visualização
CTRL + F9: Insere um campo vazio para digitação
CTRL + F10: Minimiza a janela do documento
CTRL + F12: Abrir (menu arquivo)
ALT + F5: Restaura o tamanho da janela do programa
ALT + F7: Localiza o erro ortográfico seguinte
ALT + F10: Maximiza a janela do programa
sexta-feira, agosto 04, 2006
Usando o Simple PHP Blog
Instalando
- Ele cria os diretorios: 'config', 'content', e 'images'
- Ele verifica quais tecnologias de segurança o servidor aceita;
O meu no trabalho (rs) foi assim:
Standard DES Encryption: enabled
Extended DES Encryption: disabled
MD5 Encryption: enabled
Blowfish Encryption: disabled
Então ele usou o MD5 para as senhas - Ele cria o código do arquivo password.php para você criá-lo e salvalo na pasta config.
- Agora ele recomenda você apagar os arquivos de instalação (installxx.php) e você pode configurar o seu blog.
Configurando
Agora é só alegria! É como se fosse um site de blog da internet:Idioma, informações gerais do blog, entradas, barra lateral, trackbacks, comentários e opção de compressão.
Depois você pode configurar o tema, as cores, a exibição de data, etc.
Muito bom e fácil de configurar!
quinta-feira, agosto 03, 2006
modpython no Apache 2
Instalando
É a coisa mais fácil. Tendo o Python 2.4 e o Apache 2.0, baixe o arquivo de instalação a partir do site oficial. A única pergunta que ele faz é onde está o Apache (C:\Arquivos de programas\Apache Group\Apache2\ por padrão). Pronto.Aí que vem a parte mais chatinha...
Configurando
Coloque essa linha no arquivo de configuração do Apache (conf/httpd.conf):
LoadModule python_module modules/mod_python.so
em que "modules" é a o diretório em que o modpython e os outros módulos do Apache estão a partir do local de instalação do Apache; no Linux pode ser outro diretório :)
Agora ponha essas para os arquivo de script python:
AddHandler mod_python .pyc
AddHandler mod_python .pyo
AddHandler mod_python .py
AddHandler mod_python .psp
Aí, coloque essas linhas:
<Directory htdocs/python/>
AllowOverride All
SetHandler mod_python
PythonHandler mod_python.publisher
PythonDebug On
</Directory>
A primeira linha é a raiz dos meus script python; tem que ser AllowOverride All senão não funciona direito.
De final, coloque esse bloco:
<Location mpinfo>
SetHandler mod_python
PythonHandler mod_python.testhandler
</Location>
Aí, funcionou... em partes. A partir deste diretório, eu criei outros com um arquivo ".htaccess" cada um, contendo:
SetHandler mod_python
PythonHandler mod_python.publisher
PythonDebug On
Bem... se você quiser experimentar, fique à vontade... eu me satisfiz assim e nem estou mais querendo saber o por que de os script .py do diretório htdocs/python não rodarem direito, mas os de seus diretórios filhos sim.
Se você souber, escreva aqui!
quinta-feira, junho 01, 2006
Camanha AntiSpam
Eu postei em maio um link de como agir caso receba um spam. Pois é, estava vasculhando algumas coisas e gostaria que você visitasse o cert.br e a sessão de spam, muito interessante com bastante dica, maneiras de se defender e denunciar. No canal de antispam do nic.br existe uma campanha para previnir a galera e incentivar as denúncias.
Esses são dois dos banners que eles pedem para quem quiser participar da campanha:
Tem de diversos tamanhos e duas variações de cores. Ajude a combater essas pragas!
Abraço!
quarta-feira, maio 31, 2006
Seu e-mail foi premiado!
PROMOÇÃO , 2 EM 1 !!!
VOCE GANHA UMA CAIXA POSTAL VIRTUAL GRATIS E AINDA CONCORRE A 1 DVD POR SEMANA.
VOCE LIGA PARA 21-7818-7859 , TECLE A OPÇÃO 4 ,SERVIÇOS DE ENCONTROS
CASO VOCE NÃO TENHA UMA CAIXA POSTAL VIRTUAL NOSSA , DEVERÁ SE CADASTRAR ,
É GRATIS , APÓS ISSO MANDE O NUMERO DE SUA CAIXA POSTAL PARA
O E-MAIL hcralmeida52@terra.com.br, E COMCORRA A UM DVD POR SEMANA, LIGUE JÁ !!!
FONE- 21-7818-7859 E TECLE 4 E BOA SORTE !!!
vÁLIDO PARA TODO BRASIL
- Não coloquei aqui, mas o e-mail (From) é do Hotmail.
- Premiado por quem?
- Caixa Postal Virtual?
- Ligar para um celular do Rio de Janeiro.
- Se não tiver caixa postal com eles, devo me cadastrar (grátis) e mandar o número para um e-mail nada com nada do Terra.
- Falta concordância e na última linha o "v" está em minúsculo.
- Sem formatação, caixa alta o e-mail inteiro (dificulta a leitura), ...
Não caia nessas, ok?
Abraço!
segunda-feira, maio 29, 2006
Requisitos - Aula 1
Galera,
Eu entrei no grupo de requisitos do meu setor e, por causa da certificação, temos que bolar aulas e resumos para o resto do pessoal, assim como os membros dos grupos de projeto, qualidade, condiguração e etc. Segue abaixo o resumo da aula 1 de requisitos. Espero que aproveitem, pois está bem compacto, com exemplos e não cansa a leitura.
O resumo dessa aula foi feito pelo meu colega e xará Daniel, baseando-se em apresentações usadas nos mini-treinamentos.
Resumo Requisitos – Aula 1
Norma
A norma estabelece a base, define as regras do que deve ser feito para realizar ou avaliar as atividades.
Ela está relacionada com o compromisso assumido pela organização para se atingir as metas para a certificação envolvendo o estabelecimento de políticas e patrocínio da alta gerência.
A norma diz o que deve ser feito e não como ser feito, sendo assim a Norma não é um processo.
Existe uma norma para cada área chave de processo e, no geral, está dividida em finalidade, âmbito de aplicação, conceituação e determinação. A norma pode ser encontrada no site do XXX (processo) (item Normas e Padrões) ou no sistema de normas.
XXX (processo)
O XXX é o processo de desenvolvimento que possui a seqüência de ações (atividades e subatividades) que devemos realizar. O XXX segue o que foi determinado na Norma, dando ação às suas determinações.
Requisitos
Os requisitos expressão as características e restrições do produto de software do ponto de vista da satisfação do usuário. Geralmente independe da tecnologia aplicada na implementação da solução.
Um conjunto de requisitos pode ser definido como uma condição ou capacidade necessárias que o software deve possuir para que o usuário possa resolver um problema, atingir um objetivo, atender as necessidades, restrições da organização ou dos outros componentes do sistema.
Classificação dos Requisitos
Os requisitos são classificados como requisitos funcionais e não funcionais.
Os requisitos funcionais descrevem a funcionalidade que se espera que o sistema realize, como ele se comportará com as entradas particulares e em situações especificas.
Ex: Para um sistema de biblioteca
- Permitir a consulta na base por parte do usuário;
- Realizar a reserva de uma obra emprestada;
- Efetuar o empréstimo de obras para clientes cadastrados;
- Efetuar cadastro de novos usuários;
Os requisitos não funcionais são as qualidades gerais do sistema ou parte dele, não descrevendo uma funcionalidade do sistema, mas é de grande importância, pois possui informações de como o sistema foi feito, como será o seu funcionamento, etc.
São requisitos não funcionais: requisito de desempenho, requisito de espaço, requisito de confiabilidade, requisito de portabilidade, requisitos de padrões utilizados no desenvolvimento, entre outros.
Ex: Para o sistema de biblioteca
- O sistema deverá responder uma solicitação em até 20 segundos;
- A base de dados deverá ser protegida de acessos não autorizados;
- O sistema deverá rodar sobre o sistema operacional Windows;
- O processo de desenvolvimento adotado será o XXX (processo);
- O sistema estará disponível de segunda a sábado, das 08:00 às 22:00 horas;
- O backup da base será feito diariamente às 02:00 horas;
Engenharia de Requisitos
Elicitar
A elicitação é a fase da descoberta dos requisitos para um sistema através da conversa com o cliente, usuários finais e demais partes interessadas do sistema.
Pode-se elicitar os requisitos utilizando-se questionários, entrevistas, documentações, brainstorming, prototipação, além de outras técnicas para descobrir os requisitos.
Por exemplo: Em conversa com o cliente, utilizando as leis vigentes e/ou outros métodos coleta as informações importantes do que o sistema deverá fazer, o que o usuário do sistema espera encontrar quando for usar o sistema.
Para ficar mais prático, o nosso cliente quer bloquear um usuário que infligiu as regras da biblioteca, o usuário espera encontrar no sistema a possibilidade de digitar o motivo do bloqueio e para ter certeza de que seja a pessoa certa, o sistema deverá trazer informações relevantes como nome, CPF, endereço.
Em uma conversa com o cliente essas informações são levantadas e anotadas informalmente para posterior análise.
Analisar
A análise têm como objetivo identificar possíveis problemas na declaração informal. Utiliza-se a lista de verificação para realizar a análise. Esse é o primeiro momento de se verificar se o que foi elecitado está consistente, foi entendido, podendo assim continuar o ciclo.
Utilizando o exemplo da elicitação, o analista de requisitos revê as anotações informais feitas na elicitação e utilizando-se da sua experiência ou com auxilio de outras pessoas experientes busca por falhas no encadeamento das idéias levantados, oportunidades de melhoria, buscando o entendimento mais claro possível do que o cliente quer.
Quando há imperfeições volta-se para a fase de elicitação para buscar novas informações corrigindo assim ambigüidades ou falhas ou adicionando informações importantes ao entendimento do problema/solução.
Depois disso feito chega-se a hora de documentar todo o levantamento feito de maneira formal.
Documentar
Depois da análise dos requisitos, deve ser feita a documentação que têm como objetivo registrar de forma entendivel por todos os envolvidos, uma vez que servirá de contrato entre usuários e desenvolvedores e as informações nele contidas serão utilizadas nas demais fases do projeto.
No exemplo, o analista de requisitos com as informações analisadas em mãos documenta essas informações escrevendo os passos necessários para a resolução, as regras que o sistema deverá comprir para atender, as informações de desempenho, de horário que o sistema deverá atender, casos para teste, entre outras informações.
Negociação e Priorização
É realizada a negociação com os usuários a fim de priorizar os requisitos e estimular marcos de entregas.
Para a priorização é importante que os riscos e complexidades sejam vistos a fim de não haver problemas com as previsões.
Utilizando o exemplo, o cliente quer um módulo para consultar e o outro de bloquear. Nesse momento pode-se negociar com o cliente para a fim de montar o que entregar primeiro, o que é mais emergêncial, a fim de priorizar os esforços de criação.
Revisar
A revisão é de suma importância para avaliarmos se o que está sendo elaborado está consistente com as necessidades do usuário.
A revisão é feita com a equipe e com o GQS, depois disso, os requisitos são mandados ao cliente que faz a verificação que fica registrada no termo de aceite.
Estando os requisitos revisados e aprovados pelo cliente, o processo de desenvolvimento pode continuar.
No exemplo, tudo está documentado, mas é necessário ter certeza de que o que está escrito é o que realmente o cliente deseja que o sistema faça. Para se ter mais certeza, os documentos são revisados pela equipe e também pelo cliente que dessa forma pode ver se o que está descrito é o que ele necessita. Dessa forma diminui-se as chances de criação de um sistema que não atenda ao que o cliente pediu.
Mesmo com o cliente aceitando não é garantido que os requisitos ficarão da forma que foram aprovados, eles podem mudar a qualquer momento e sendo assim, é necessária uma gestão nos requisitos.
Gestão de Requisitos
A gestão de requisitos deve ocorrer em todo o ciclo de requisitos e enquanto o projeto estiver ativo, pois os requisitos podem mudar durante o desenvolvimento o que vai necessitar análises de impacto para visualizar o que a alteração muda no que foi especificado.
Além disso, a gestão também é feita para o acompanhamento da situação do projeto, através da analise dos requisitos pode-se avaliar como está o projeto (quanto já foi realizado, por exemplo).
Necessidade e Funcionalidade
A necessidade é o que o usuário quer que o sistema faça, são os problemas que o usuário têm e que o sistema irá ajudar a resolver.
A funcionalidade é o como que isso será feito, é a solução, características do sistema que farão com que a necessidade seja satisfeita.
Ex: Para o sistema de biblioteca
- Necessidade:
- Reservar um livro para um aluno.
- - Funcionalidade:
- Pesquisar existência de obra no acervo;
- Realizar a reserva de obra;
- Informar conclusão da reserva;
Ator
O ator é algo externo ao sistema podendo ser uma pessoa, um sistema e até mesmo um equipamento (impressora, por exemplo) que interage com o sistema fornecendo entradas ou recebendo saídas dele.
Caso de Uso
É um documento narrativo que descreve a seqüência de eventos de um ator que usa um sistema para complementar um processo (por Ivan Jacobson). Ou seja, é a descrição da seqüência de ações que devem ocorrer para que o ator tenha a sua necessidade satisfeita.
Por exemplo: Para um caso de uso Realizar Saque, teríamos a descrição da seqüência de ações para realizar essa atividade: colocar cartão; digitar senha; validar senha; informar valor desejado; verificar existência de saldo na conta; verificar existência de valor no caixa; subtrair valor da conta; liberar valor para o cliente.
Inclusão
A inclusão é um caso de uso que é sempre chamado por outro caso de uso. Ele não depende de uma condição para essa chamada.
A inclusão é muito utilizada quando temos uma ação que é comum a muitas partes do sistema.
Por exemplo o Login que é utilizado por muitas partes do sistema da mesma forma, além disso, é uma chamada incondicional, pois o login é necessário para que as operações sejam executadas.
Extensão
A extensão, diferentemente da inclusão, depende de uma condição para chamar um outro caso de uso, com isso o caso de uso nem sempre é chamado.
Por exemplo uma parte de um sistema responsável em informar um fornecedor que o estoque está baixo. Vamos nomear esse caso de uso como sendo INFORMAR FORNECEDOR e imaginar que o estoque mínimo é de 10 unidades.
Quando uma compra ocorrer e a quantidade em estoque for de 9 produtos, o caso de uso INFORMAR FORNECEDOR é chamado.
Generalização
A generalização ocorre quando temos um caso de uso que faz uma parte comum e é complementado por outros casos de uso. O caso de uso base possui diferentes especializações que são tratadas por outros casos de uso.
Por exemplo um caso de uso responsável por pagar uma fatura, podemos pagar a fatura usando o cartão de crédito, dinheiro ou cheque.
Vamos nomear esses casos de uso como: PAGAR FATURA, PAGAR COM CARTÃO, PAGAR COM DINHEIRO e PAGAR COM CHEQUE.
O PAGAR FATURA é genérico e é complementado pelo PAGAR COM CARTÃO, PAGAR COM DINHEIRO e PAGAR COM CHEQUE.
Além de generalização de caso de uso também podemos ter generalização de atores. Vamos considerar dois atores o GERENTE e o FUNCIONÁRIO.
O GERENTE também é um funcionário, mas ele possui permissões diferentes de acesso ao sistema, sendo assim ele complementa as operações do FUNCIONÁRIO.
A generalização de caso de uso é o tipo mais complicado de se usar e se explicar. Eu particularmente, nunca utilizei nem vi um uso prático para isso, que em situações parecidas utilizei inclusão. Digo isso porque acho que todo mundo fica confuso ao tentar mentalizar um cenário com este tipo de CDU. A generalização, ou especialização, é mais comum com atores.
quinta-feira, maio 18, 2006
Denúncia de Spam
Achei uma matéria classe A em português sobre denúncia de Spam. O site é da consultoria G2CTech e explica direitinho como reportar um spam.
Alguns links para serviços que o artigo se refere:
Abraço!
sexta-feira, maio 05, 2006
Presente de aniversário
A Petrobrás, maior empresa estatal do país, está com
inscrições abertas para o concurso que visa ao
preenchimento de 1.178 vagas para os níveis médio,
médio técnico e superior.Os interessados em participar podem fazer as inscrições
até o dia 25/05. A taxa é de R$28,00 para cargos de
níveis médio/técnico e de R$42,00 para os cargos de
nível superior.Os salários iniciais chegam a R$3.605, de acordo com
o cargo pretendido.Aproveite! Boa remuneração, benefícios e a estabilidade profissional que você precisa para planejar seu futuro.Clique aqui para maiores informações e retire o Edital (lnk para um executável em um domínio esquisito... em espanhol)
segunda-feira, abril 24, 2006
Anatel dá mais minutos grátis
Eu sei que a notícia é um pouco velha, mas (acho que) ainda é válida.
Quinta-feira, 24 de novembro de 2005 - 15h48
SÃO PAULO - A Anatel (Agência Nacional de Telecomunicações) anunciou que em 2006 os usuários de telefones fixos residenciais terão direito a 200 minutos grátis nos dias de semana.
A novidade faz parte das novas regras de tarifação para a telefonia fixa anunciadas nesta quinta (24). Ela está associada à mudança na forma de cobrança, abandonando o atual esquema de pulsos e passando a cobrar por minutos. Pelo modelo atual, o assinante tem direito a uma franquia de 100 pulsos, equivalente a 170 minutos grátis.
A mudança vale apenas para os telefones residenciais. Para os comerciais, a conversão dos pulsos fica em 150 minutos.
Outra novidade que será incluída em janeiro é o detalhamento de todas as chamadas, semelhante ao que existe nos serviços de telefones celulares.
As empresas têm até 31 de julho de 2006 para concluir a conversão de pulsos para minutos e para apresentar as contas detalhadas. As companhias que não cumprirem as determinações a partir de agosto serão multadas.
A Anatel também divulgou como será o sistema de atualização do IST (Índice de Serviços de Telecomunicações), que passará a servir de base para a correção das tarifas de telefonia fixa, substituindo o IGP-DI. Ele será formado pela média ponderada de vários índices já existentes, que refletem os diversos custos das empresas. A cada dois anos, a agência vai rever a composição do índice.
Paulo Silvestre, do Plantão INFO
(Obtido em: http://info.abril.com.br/aberto/infonews/112005/24112005-2.shl )
quinta-feira, abril 20, 2006
Salários de TI
O site da Info possui uma tabela sempre atualizada com as faixas salariais para cada cargo de TI. Muito legal, porque dá para você ter uma referência e, quem sabe, negociar o dindin... o leitinho das crianças...
http://info.abril.com.br/carreira/salarios.shl
Tem também o site www.meusalario.org.br, mas não é muito completo... ainda.
Abraço
quinta-feira, abril 13, 2006
Nanocarro motorizado - Notícia do Estadão
Ciência e Meio Ambiente
12 de abril de 2006 - 20:07
Cientistas produzem nanocarro motorizado
Modelo motorizado, que funciona com a luz, mede apenas entre 3 e 4 nanometros
HOUSTON, EUA - Depois da invenção do primeiro carro feito de uma única molécula no ano passado, os químicos na Universidade Rice produziram a primeira versão motorizada de seu minúsculo nanocarro. A pesquisa será publicada na edição desta quinta-feira da revista Organic Letters.
"Nós queremos construir coisas desde o início, uma molécula de cada vez, mais ou menos da mesma forma que as células biológicas usam enzimas para montar proteínas e outras supermoléculas", disse o pesquisador James M. Tour. "Tudo que é produzido pela biologia - da mais alta árvore a maior baleia - é construído por uma molécula de cada vez. Os nanocarros e outros transportadores sintéticos podem ser alternativas adequadas para sistemas criados da base para o topo, em que os métodos biológicos não são práticos".
O modelo motorizado do nanocarro funciona com a luz. Seu motor rotativo, um dispositivo molecular que foi desenvolvido por Ben L. Feringana, Universidade de Groningen, na Holanda, foi modificado pela equipe de Tour e, assim, poderia se unir ao chassi do nanocarro. Quando a luz atinge o motor, ele roda em uma direção, empurrando o carro, como uma roda de pás.
O nanocarro consiste em um chassi rígido e quatro rodas de acetileno que giram livremente e independentemente uma da outra. As quatro rodas de fulereno que foram usadas na versão original do nanocarro roubavam energia do motor, e foram substituídas por moléculas esféricas de carbono, hidrogênio e boro.
Testes iniciais conduzidos em uma banheira de solvente de tolueno constataram que o motor gira como projetado quando é atingido pela luz. Mais testes estão em andamento para determinar se o carro motorizado pode ser dirigido em uma superfície lisa.
Os nanocarros, que medem apenas entre 3 e 4 nanômetros (bilionésimos de metro), têm mais ou menos a mesma largura de cordão de DNA, mas altura muito menor. Cerca de 20 mil desses nanocarros poderiam ser estacionados, lado a lado, no diâmetro de um fio de cabelo humano.
Eles são os primeiros veículos em nanoescala com um motor interno.
Copyright © 2006 Grupo Estado. Todos os direitos reservados
http://www.estadao.com.br
quinta-feira, abril 06, 2006
Internet Explorer & Edições (Interpretações) do CSS
http://www.codeproject.com/useritems/css-internet-explorer.asp
(fevereiro de 2006)
Também está no site do autor:
http://www.webcredible.co.uk/user-friendly-resources/
css/internet-explorer.shtml
(abril de 2006)
Tentar obter sites baseados em CSS para se ver em diversos navegadores pode ser difícil. Muitos dos problemas vêm da implementação diferente dos comandos CSS pelo Internet Explorer e os outros, mais padronizados. Nem tudo está perdido, mas como muitas diferenças que você vê entre os navegadores são causadas pela mesma edição do CC do iE...
1. Elementos da página são mais estreitos no Internet Explorer
Talvez o mais famoso problema do CSS e iE é a interpretação "corretíssima" do Internet Explorer com relação ao modelo de caixa do CSS, que torna elementos da página mais estreitos. Todo elementos HTML ou XHTML é essencialmente uma caixinha; a largura é o total da margem, borda, espaçamento interno e conteúdo. Imagine a seguinte regra CSS:
div {
margin: 5em;
padding: 4em;
border: 1em solid green;
width: 30em
}
Isto significa que cada DIV tem 50em de largura, sendo 30em a área do conteúdo, 4em o espaçamento interno (distância da borda), 1em de borda e 5em de margin (distância invisível entre a borda e outro elemento), em todas as direções (5em + 1em + 4em + 30em + 4em + 1em + 5em).
No bendito do iE, entretanto, a borda e o espaçamento interno são interpretados com parte da largura declarada, como parte da área do conteúdo, e não são adicionados. Então, o espaço do conteúdo é reduzido a 20em (30em - 4em+1em=5em[esquerda] - 4em+1em=5em[direita]), e o total da DIV é de 40em.
Este problema de modelo de caixa do CSS ocorre no iE5.x, e pode ocorrer no iE6, dependendo da sua declaração do valor ISO no código (X)HTML.
- [?xml version="1.0" encoding="iso-8859-1"]
- [meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /]
Por usar o primeiro comando, o Internet Explorer 6 vai exibir de forma errada o modelo de caixa CSS, como na versão 5 do navegador. Para arrumar esse problema, você precisa inserir um "corte" CSS para ter um valor diferente quando lido dependendo do navegador. O "corte"
CSS que você usa depende de qual valor da ISO declarada, e que versão do iE exibe o modelo incorretamente.
Para arrumar esse problema no somente no iE5.x, use o seguinte comando CSS:
div {
margin: 5em;
padding: 4em;
border: 1em solid green;
width/**/:/**/ 40em;
width: 30em
}
Para arrumar em todas as versões do iE, use o seguinte:
div {
margin: 5em;
padding: 4em;
border: 1em solid green;
width: 40em
}
html>body div {
width: 30em
}
(O autor original deste artigo recomenda ler um outro, "CSS hacks & browser detection" para mais "cortes" desses tipos.)
2. O texto sai do seu contâiner/espaço determinado em navegadores não-iE
O Internet Explorer, diferentemente de outros navegadores, vai expandir a borda e a cor de fundo para que o texto não saia do contâiner.
Digamos que uma DIV seja de classe "box" (class="box") e tenha o seguinte comando CSS:
.box {
width: 40px;
}
Navegadores não-iE vão se fixar cegamente na largura de 40px e não vão expandir para acomodar qualqer texto maior que isso. Entretanto, o iE interpreta o "width" como "min-width" (largura mínima), então se o texto for maior, a largura acompanha seu tamanho (o mesmo ocorre com "height" e "min-height").
Para ficar certo de que o texto não vai transbordar em nenhum navegador, você precisa usar a seguinte regrinha CSS, além daquela primeira:
html>body .box
{
width: auto;
min-width: 40px
}
Como o comando CSS tem html>body na frente, o iE vai ignorar estas regras (o autor deste artigo recomenda novamente a leitura daquele outro artigo indicado anteriormente). sendo assim, este comando CSS serve para navegadores não-iE. A primeira regra "width: auto" cancela a regra original de largura fixa. O segundo comando "min-width: 40px" determina uma largura mínima, permitindo que o conatâiner/caixa se expanda conforme o texto.
3. Sumindo com a imagem de fundo
O iE tem um probleminha muito esquisito para fazer imagens (e de vez em quando textos - particularmente se há elementos flutuando [float] em torno dele) de fundo desaparecerem. Iss o normalmente acontece quando você rola a página para cima e para baixo, e você pode fazer reaparecer o fundo atualizando a mesma (F5).
Claro que você não quer que o usuário do seu site tenha que ficar atualizando a página para ver a imagem de fundo por completo! Uma solução maluca para um problema maluco é inserir o comando "position: relative" na regra CSS no contâiner que contém a imagem de fundo:
.foo {
background: url(filename.jpg);
position: relative
}
Ocasionalmente isto não funciona, assim outra solução é atribuir largura e altura ao elemento com a imagem de fundo. Você pode não querer fazer isso, então pode atribuir uma altura de 1% apra o iE, porque ele interpreta "height" como "min-height" (veja o número 2), o que não vai alterar na aparência:
.foo {
background: url(filename.jpg);
height: 1%
}
html>body .foo {
height: auto
}
A altura de 1% é cancelada pela regra "height: auto", que é ignorada pelo iE que não entende "html>body"
4. Larguras que só funcionam no iE
Todo elemento HTML ou é de bloco ou de linha. Exemplos de elementos de bloco incluem include [div], [p], [h1], [form] e [li]. Exemplos de elementos de linha [font], [a], [label], [strong] e [em]. Uma das características dos elementos de linha é que você não pode mudar a largura deles. Teoricamente a seguinte regra CSS não deveria funcionar:
span {
width: 100px
}
Esta regra CSS não trabalha, com exceção do nosso amigo Internet Explorer em que cada "span" terá uma largura de 100px. Em todos os outros navegadores, a largura do "span" vai simplesmente ser a largura do númer de caracteres existentes nele. A solução? Faça do "span" um elemento do nível de bloco:
span {
width: 100px;
display: block
}
(Tornando o "span" em um elemento de bloco, vai fazer com que a largura do comando funcione em todos os navgadores, mas fará também o "span" começar numa nova linha. Para comabater isso você pode atribuir"flot: left" ao "span".)
5. Versão da página sem estilo aparecendo no iE
Quando seu website é carregado no iE, uma versão sem o estilo especificado aparece por um ou dois segundos, antes do estilo ser entrar em ação? Se sim, seu site pode estar sofrendo de uma coisa conhecida por "Flash Of Unstyled Content - FOUC" (flash de conteúdo sem estilo).
Se você estiver usando a diretiva "@import" (ex: [style type="text/css"]@import "styles.css";[/style]) para chamar seu arquivo CSS, isso pode acontecer com seu website no iE. É estranho, não há explicação lógica para isso, só a certeza de que deve ser reparado.
Uma solução simples para esse problema ilógico é igualmente ilógico - insira um elemento "link" ou "script" no cabeçalho:
- [script type="text/javascript" src="scripts.js"][/script]
- [link rel="stylesheet" href="styles.css" type="text/css" media="print"]
6. Página com largura fixa não fica no centro da janela
Fez um site com largura fixa e não consegue centralizá-lo no Internet Explorer? Ou você consegue centralizá-lo no iE, mas não nos "outros" navegadores? Relaxa, não é culpa sua! Infelizmente o jeito certo para alinhar um conteúdo a ocentro através do CSS não funciona corretamente no iE:
#container {
width: 770px;
margin: 0 auto
}
O segundo comando, "margin: 0 auto", basicamente dá a nosso conteúdo uma margem automática na esquerda e direita, desse modo posicionando o elemento no centro da janela.
O iE, entretanto, vai precisar de comandos um pouquinho diferentes para fazer isso:
body {
text-align: center
}
#container {
width: 770px;
margin: 0 auto;
text-align: left
}
Isso certamente vai centralizar o conteúdo no iE também. Para previnir o texto de alinharjuntamente ao centro, inserimos "ext-align: left" na DIV "container".
Este artigo foi retirado do site www.codeproject.com, como mencionado no início, e é de autoria de Trenton Moss, dito como um maluco por usabilidade e acessibilidade.
quarta-feira, março 29, 2006
Diferenças entre o CMM e CMMI

Nível de Maturidade (organização como um todo) e Capacidade (cada processo)... A representação contínua é mais flexível, pois permite a evolução de processos separadamente. Já a representação por estágios define as dependências das áreas do processo, permitindo uma evolução mais segura e comparação entre organizações (níveis de maturidade). As AP (áreas do processo) possuem metas genéricas e específicas com suas práticas e artefatos. Os nomes nos níveis mudaram um pouco.

Mas qual a grande mudança? No CMMI as disciplinas foram unidas numa só e possuem 25 PAs ou APs e foram divididas/explodidas e jogadas em outros grupos para facilitar a gestão buscando atender melhor o conjunto de práticas genéricas de determinado nível. Na prática, para uma organização com um processo definido e seguindo as premissas o impacto será quase 0. Pelo menos foi o que foi colocado no treinamento.
Tem alguma besteira que escrevi ou quer complementar? Comente!
Abraço!
segunda-feira, fevereiro 13, 2006
Acessibilidade - Brilho e Contraste das Cores
Para cada cor devem ser aplicadas essas fórmulas:
Brilho =
[(vermelho x 299) + (verde x 587) + (azul x 114)] / 1000
Esse algotítimo usa a fórmula de conversão de RGB para YIQ que diz o brilho percebido para uma cor. Uma diferença maior que 125 é considerada ideal.
Contraste =
[máximo(vermelho 1 e vermelho 2) - mínimo(vermelho 1 e vermelho 2)] +
[máximo(verde 1 e verde 2) - mínimo(verde 1 e verde 2)] +
[máximo(azul 1 e azul 2) - mínimo(azul 1 e azul 2)]
No caso do contraste, a diferença ideal é de 500.
Assim, pelo menos, você sabe que o conteúdo é visível tornando sua página bem acessível. Utilize sempre que pintar uma dúvida, ou se preferir, sempre que criar ou modificar algum elemento com atributo de cor (body, table, td, th, hr).
Abraço!
segunda-feira, fevereiro 06, 2006
Requisitos
Funcionais - funções e ações do sistema (gerar relatório, permitir manutenção dos cadastros)
Não Funcionais - restrições, padrões e frescuras (tempo de saída automática do sistema [logoff], usabilidade, posicionamento do logo da empresa [isso afeta o visual...])
Essa coisas são definidas pelo usuário e especificadas pelo analista, no caso você, que deve documentar tudo para não ter problemas depois. É na fase de elicitação de requisitos que se conhece os atores (quem age), as necessidades (o que ele quer que o sistema satisfaça) e suas funcionalidades (o que deve fazer para atender as necessidades), tira a medida do projeto (tamanho, custo e esforço, principalmente), cria os casos de uso ligados às funcionalidades (uma historinha passo-a-passo da interação entre os atores e as atividades/ações), regras de negócio a serem seguidas na aplicação, faz o glossário para o cliente e você, e quem ler a documentação, entender tudo que se passa.
É complicado, mas normalmente o cliente muda alguma coisa no decorrer do projeto, inventa uma necessidade ou diz que algo não é mais necessário ou quer diferente, por isso, se esforce para sugar e questionar ao máximo os requisitos que você pegou e, assim, depois se estressar menos com as mudanças. Lembre-se de analisar o impacto dessas mudanças, hein! Cliente é fogo!
segunda-feira, janeiro 16, 2006
Testes de TI
quarta-feira, janeiro 11, 2006
Página bonita e pesada vale a pena?
estiver falando de um site de uma empresa de marketing, publicidade, cerveja ou até mesmo de uma montadora de carros? Você tem que aparecer! Antes de tudo ser autêntico e único... original, e existe algo melhor do que as mídias para isso. Vídeos, músicas, animações e imagens alucinantes ou finíssimas para representar sua entidade, empresa, pessoa - porque o site é um espelho seu. As pessoas querem lhe conhecer, e para isso, meu amigo(a), vale tudo... mas com muita cautela. Não se esqueça que o site lhe representa, por isso não faça caquinha (vão pensar que você também é uma).
Como exemplo, deixe eu pegar o site da... Volks: me passa a impressão de uma empresa séria com espírito de aventura... uma foto de um carro dela no Rally Dakar. Apesar os scripts dos menus apresentarem um probleminha com o "onomuseover" no meu Firefox (a não ser que tenham feito de propósito a aba não baixar de vez em quando), é bem interessante. Esses sites têm que passar a qualidade de seus produtos e fotos servem para isso. A pessoa deve se sentir realizando um sonho, então põem umas fotos de alguém feliz para você se projetar nessa pessoa.
Acho que todos os sites de montadora têm um "configurador/monte o seu/ou sei lá o que" para você escolher as cores e acessórios pela internet. Tudo feito em Flash. Claro que o alvo deles não é um usuário do Linx. Até as buscas são feitas em Flash, algo que é simples de se fazer (entre em Renault, busque um carro com certas configurações), mas o que importa nestes casos é o visual. A empresa tem que ser imponente.
Agora entre no site da AmBev. Tem suas animações legais, mas repare no menu: Responsabilidade Corporativa, Imprensa, Investidores, Apoios e Patrocínio... Agora entre em Skol - do grupo AmBev - e comece pelo título "<skol> oooooooooooo...", aviso que o site usa Flash 6.0 e se você tem menos de 18 anos é redirecionado para o site da AmBev. Se você for maior de idade vai cair num site em Flash. Pra que essa diferença? Porque o foco é outro. Skol desce redondo, numa praia, é festa, é farra, com responsabilidade (!), eventos... Quem entra nesse site quer isso e por se sentir bem nessa onda ele compra.
Quando você for planejar um site, deve levar vários fatores em consideração. Como você já deve saber, o público alvo é essencial para se avaliar a funcionalidade atrativa de uma imagem, animação, apresentação (eu não gosto), cores e a disposição dos elementos na tela, ou seja a banda a ser consumida e o leiaute. A necessidade do uso de cada recurso que as páginas permitem é você quem vai avaliar, ou seu cliente chato que sempre quer aquele iconezinho ali ou a fachada ridícula da empresa no meio do site como apresentação (já falei que não gosto de sites com apresentação?). Procure dominar esses recursos para compensar peso, principalmente, sem perder qualidade.
Talvez você tenha lido uma postagem anterior sobre imagens e achado que sou aqueles psicóticos que não gostam de imagens, mas não é isso. É que às vezes existem excessos... e, outras vezes, falta.
segunda-feira, janeiro 09, 2006
AJAX - definição de cada nome da sigla
Assíncrono: Significa que quando você faz uma requisição e espera o retorno, mas está livre para fazer outras coisas enquanto isso. A resposta provavelmente chega quase que imediatamente, então você faz uma função que espera o envio do servidor e faz alguma coisa quando ela chegar.
Ou seja, assíncrono quer dizer "pede pro servidor, você faz o que tiver que fazer e quando ficar pronta, ele te manda a resposta".
Javascript: É uma linguagem para criar scripts e deixar suas páginas mais dinâmica. Neste caso, do AJAX, usado para requisitar ao servidor. Uma vez que a resposta é retornada do servidor, você normalmente vai usar alguma(s) função(ões) Javascript para mudar algo na página atual para mostrar que a ação foi realizada com sucesso.
XML: É uma linguagem de marcação que armazena somente dados. Os dados que você recebe do servidor são empacotados como XML, sendo facilmente processado pelo Javascript. Este dado pode qualquer coisa de qualquer tamanho.
Espero ter ajudado alguém que tenha dificuldade de entender isso... se tiver dúvidas, comente!