Quando você precisa imprimir de forma curta algo, utiliza um operador condicional como o que segue:
0 ? 'X maior que zero' : 'X <>
Para que não conhece, isso se traduz em: se X maior que 0 "? = Então", ": = Senão".
Mas e quando você precisa imprimir somente uma parte da condição? No exemplo, se você só precisar imprimir o texto se X maior que zero? Bem, você pode fazer assim:
0 ? 'X maior que zero' : ''; ?>
Mas se não preciso do segundo teste, que atrasa o compilador (tá bom, deve ser um trilionésimo de segundo, mas é um fator contra mesmo assim) e é deselegante, como poderia fazer?
Simples:
0 AND print 'X maior que zero' ?>
A primeira vista talvez não se veja vantagem, mas com certeza é melhor e mais elegante e você vai acabar descobrindo...
Ha!
quarta-feira, 19 de agosto de 2009
quarta-feira, 12 de agosto de 2009
Mono Touch
Foi anunciado pelo Miguel de Icasa, criador do projeto Gnome (uma das principais interfaces gráficas do Linux) o Mono Touch, que integra C# e .NET para aproveitar as APIs do Iphone.
O projeto está recrutando "aventureiros" - beta tester's - para ajudar nos testes dessa nova empreitada.
Nos comentários do anúncio feito no blog do Miguel, muitos criticaram essa nova faceta do Mono, mas eu acredito que isso só engrandece o projeto Mono, que é uma ótima idéia desde o começo.
Para que não conhece o Mono, ele é uma versão de código aberto de uma tecnologia da Microsoft para desenvolvimento, o .NET.
Será o início de uma guerra de aplicativos?
O projeto está recrutando "aventureiros" - beta tester's - para ajudar nos testes dessa nova empreitada.
Nos comentários do anúncio feito no blog do Miguel, muitos criticaram essa nova faceta do Mono, mas eu acredito que isso só engrandece o projeto Mono, que é uma ótima idéia desde o começo.
Para que não conhece o Mono, ele é uma versão de código aberto de uma tecnologia da Microsoft para desenvolvimento, o .NET.
Será o início de uma guerra de aplicativos?
quinta-feira, 16 de julho de 2009
O bug do GPS
Você pode ainda não estar acostumado com ele, talvez nunca tenha utilizado, mas já ouviu falar muito, e em muitos lugares do planeta, já é banal contar com um aparelho de GPS em qualquer lugar.
Muitas são as histórias bizarras contando com o "empurrãozinho" do melhor amigo do viajante...
O que acontece é que o GPS (Global Positioning System) é uma rede formada por 31 satélites espalhados ao longo da órbita da Terra. Para calcular a posição, cada satélite lança um sinal a caba bilionésimo de segundo com a localização e horário. O receptor capta estes sinais e calcula quanto tempo levaram para chegar até ele e a partir daí calcula sua distância de cada um dos satélites. Desta maneira, o aparelho faz a triangulação: sabendo sua distância dos 3 satlites, tem sua exata localização. Até aí, tudo bem.
O problema
Se um dos sinais falha ou não está disponível, o aparelho não tem coordenadas suficientes e exibe informações incorretas. Os satélites do GPS estão velhos, perto do fim de sua vida útil e podem começar a falhar a qualquer momento. Para o funcionamento do sistema, é necessário que ao menos 24 satélites estejam operantes. Se isso não acontecer, algumas áreas do planeta podem ficar sem cobertura, e ninguém sabe ao certo quais serão estas áreas.
Um estudo aponta que no ano que vem o sistema de confiabilidade estará abaixo dos 95%, patamar considerado ideal por militares. Muitos sistemas, desde transporte até turismo utilizam o GPS e eventuais panes podem causar sérios prejuízos em escala global.
Existem alternativas como o sistema da Rússia Glonass e a Europa está montando sua própria rede, a Galileo. Mas só será lançada em 2010, e as implicações para todos que utilizam o GPS são grandes.
Retirado da Super deste mês.
Muitas são as histórias bizarras contando com o "empurrãozinho" do melhor amigo do viajante...
O que acontece é que o GPS (Global Positioning System) é uma rede formada por 31 satélites espalhados ao longo da órbita da Terra. Para calcular a posição, cada satélite lança um sinal a caba bilionésimo de segundo com a localização e horário. O receptor capta estes sinais e calcula quanto tempo levaram para chegar até ele e a partir daí calcula sua distância de cada um dos satélites. Desta maneira, o aparelho faz a triangulação: sabendo sua distância dos 3 satlites, tem sua exata localização. Até aí, tudo bem.
O problema
Se um dos sinais falha ou não está disponível, o aparelho não tem coordenadas suficientes e exibe informações incorretas. Os satélites do GPS estão velhos, perto do fim de sua vida útil e podem começar a falhar a qualquer momento. Para o funcionamento do sistema, é necessário que ao menos 24 satélites estejam operantes. Se isso não acontecer, algumas áreas do planeta podem ficar sem cobertura, e ninguém sabe ao certo quais serão estas áreas.
Um estudo aponta que no ano que vem o sistema de confiabilidade estará abaixo dos 95%, patamar considerado ideal por militares. Muitos sistemas, desde transporte até turismo utilizam o GPS e eventuais panes podem causar sérios prejuízos em escala global.
Existem alternativas como o sistema da Rússia Glonass e a Europa está montando sua própria rede, a Galileo. Mas só será lançada em 2010, e as implicações para todos que utilizam o GPS são grandes.
Retirado da Super deste mês.
terça-feira, 14 de julho de 2009
Chrome OS anunciado: para que?
A Google vive inovando e trazendo alguma coisa de bom para todos nós. Mas reinventar a roda sempre está tornado a empresa um tanto quanto repetitiva, monótona e até previsível.
O anúncio oficial do sistema operacional da Google indica que será baseado no kernel do Linux, mas trará um novo gerenciador de janelas. Promete também um boot quase instantaneo como muitas distribuições vem tentando conseguir. O novo boot do Ubuntu Jaunty por exemplo, em meu notebook dura exatos 10 segundos!
Há necessidade de mais uma distribuição do Linux no mercado? Os usuários já não se confundem demais com tantos SO's que existem por aí? E gerenciador de janelas, mais um também?
Em minha humilde opinião, se a Google tivesse que apostar, que aposte somente no gerenciador de janelas, distribuição de Linux já temos demais. Somente o Ubuntu e o OpenSuse já são mais que suficientes (mas temos muitos outros claro). Gerenciador de janela também, mas como a Google presa pela leveza e praticidade (e sempre consegue surpreender e trazer ótimos resultados) acredito que poderíamos ter, aí sim, um bom produto para entrar no mercado e que possa agregar algo.
Para lembrar, alguns anos atrás, quando a Google lançou o Gmail, muitos estavam no limite com o Outlook, que era o cliente de e-mail mais utilizado na época, e que deixava todo mundo de cabelo em pé com problemas como recebimento de e-mails, perda de mensagens, catálogo de endereços, etc.
Eu mesmo não aguentava (e ainda não aguento) mais receber e-mail formatado com musiquinhas e todas as parafernálias disponíveis. Vem a Google e cria um serviço de e-mail com 2GB de armazenamento mas que incentiva a visualização (e formatação) simples dos e-mails. Era tudo que eu queria e que sempre achei que fosse suficiente para utilizarmos e-mail. Não gosto de besteira no computador, e acho que o grande mal da internet é exatamente estas besteiras. Ponto para a Google.
Mas acho que não acontece a mesmo coisa com os SO's. Não temos um problema que precisa de solução (ok, tem mas não para lançar outro produto no mercado).
Precisamos de mais gente contribuindo para o que já está aí!
Tudo bem que tudo que a Google faz sempre causa um alvoroço e chama atenção, o que consequentemente traz uma adoção dos projetos, ao menos por curiosidade. Mas isto não garante nada.
O navegador chrome está aí para provar, fez barulho no começo mas não conseguiu bater o Firefox até o momento...
O anúncio oficial do sistema operacional da Google indica que será baseado no kernel do Linux, mas trará um novo gerenciador de janelas. Promete também um boot quase instantaneo como muitas distribuições vem tentando conseguir. O novo boot do Ubuntu Jaunty por exemplo, em meu notebook dura exatos 10 segundos!
Há necessidade de mais uma distribuição do Linux no mercado? Os usuários já não se confundem demais com tantos SO's que existem por aí? E gerenciador de janelas, mais um também?
Em minha humilde opinião, se a Google tivesse que apostar, que aposte somente no gerenciador de janelas, distribuição de Linux já temos demais. Somente o Ubuntu e o OpenSuse já são mais que suficientes (mas temos muitos outros claro). Gerenciador de janela também, mas como a Google presa pela leveza e praticidade (e sempre consegue surpreender e trazer ótimos resultados) acredito que poderíamos ter, aí sim, um bom produto para entrar no mercado e que possa agregar algo.
Para lembrar, alguns anos atrás, quando a Google lançou o Gmail, muitos estavam no limite com o Outlook, que era o cliente de e-mail mais utilizado na época, e que deixava todo mundo de cabelo em pé com problemas como recebimento de e-mails, perda de mensagens, catálogo de endereços, etc.
Eu mesmo não aguentava (e ainda não aguento) mais receber e-mail formatado com musiquinhas e todas as parafernálias disponíveis. Vem a Google e cria um serviço de e-mail com 2GB de armazenamento mas que incentiva a visualização (e formatação) simples dos e-mails. Era tudo que eu queria e que sempre achei que fosse suficiente para utilizarmos e-mail. Não gosto de besteira no computador, e acho que o grande mal da internet é exatamente estas besteiras. Ponto para a Google.
Mas acho que não acontece a mesmo coisa com os SO's. Não temos um problema que precisa de solução (ok, tem mas não para lançar outro produto no mercado).
Precisamos de mais gente contribuindo para o que já está aí!
Tudo bem que tudo que a Google faz sempre causa um alvoroço e chama atenção, o que consequentemente traz uma adoção dos projetos, ao menos por curiosidade. Mas isto não garante nada.
O navegador chrome está aí para provar, fez barulho no começo mas não conseguiu bater o Firefox até o momento...
terça-feira, 9 de junho de 2009
Windows 7: primeiras impressões
O Windows 7 Ultimate Realease Candidate saiu e instalei duas cópias para avaliação: uma instalação em uma máquina virtual e outra em um PC novo.
A instalação do Windows melhorou muito, tanto em velocidade como facilidade de instalação.
Ao iniciar o sistema pela primeira vez, ele colhe algumas informações como em outras versões, porém com menos passos. O esforço da Microsoft em diminuir passos e facilitar a instalação são notáveis.
Ao entrar no Windows pela primeira vez, nota-se que a barra de tarefas foi bastante modificada. Por padrão as janelas são agrupadas pelo ícone dos programas, ótimo para heavy users, mas péssimo para os menos atentos.
O Windows 7 já vem com o I.E. 8 com o plugin do flash versão 10. O I.E. 8 ficou muito bom, renderiza as páginas muito rápido.
A interface continua muito bela e funcional, e parece que o esforço da Microsoft em melhorar a velocidade do sistema deu resultado.
O Windows está mais rápido, mesmo com todos os efeitos ativados, anti vírus instalado e todos os softwares mais comuns rodando (MSN, Mixer do som, Controlador do vídeo, etc) mostrou um desempenho ótimo, sem problemas de redesenho de janelas, ou efeito slow motion em troca de janelas e abertura de programas.
Desativando os efeitos ganha-se mais um pouco de desempenho e ainda tem-se o belo visual da interface Aero com funcionalidade reduzida.
Para quem gosta dos efeitos e tem recursos de sobra, a Aero também sofreu melhorias. Em minha opinião, muito funcional e considerando o que é, leve.
Instalar o Windows 7 está quase tão rápido quanto instalar uma distribuição do Linux.
A máquina virtual possui apenas 1 Gb de RAM e um processador Turion TL-50 rodando a 800 Mhz e vídeo on-board com 8 Mb.
O PC real é um Athlon x2 Black Edition com 2 Gb de RAM e vídeo on-board com 256 Mb.
Nos dois a instalação ocorreu sem problemas em menos de uma hora. Minha primeira impressão do Windows 7 foi ótima, o sistema ficou próximo do que a Microsoft tanto promoteu desde o Vista (aparentemente).
A lista das melhorias:
Somente o tempo dirá se o Windows 7 vai conseguir conquistar de volta o carisma do público. Mas ao que parece, tem tudo para conseguir...
Ha!
A instalação do Windows melhorou muito, tanto em velocidade como facilidade de instalação.
Ao iniciar o sistema pela primeira vez, ele colhe algumas informações como em outras versões, porém com menos passos. O esforço da Microsoft em diminuir passos e facilitar a instalação são notáveis.
Ao entrar no Windows pela primeira vez, nota-se que a barra de tarefas foi bastante modificada. Por padrão as janelas são agrupadas pelo ícone dos programas, ótimo para heavy users, mas péssimo para os menos atentos.
O Windows 7 já vem com o I.E. 8 com o plugin do flash versão 10. O I.E. 8 ficou muito bom, renderiza as páginas muito rápido.
A interface continua muito bela e funcional, e parece que o esforço da Microsoft em melhorar a velocidade do sistema deu resultado.
O Windows está mais rápido, mesmo com todos os efeitos ativados, anti vírus instalado e todos os softwares mais comuns rodando (MSN, Mixer do som, Controlador do vídeo, etc) mostrou um desempenho ótimo, sem problemas de redesenho de janelas, ou efeito slow motion em troca de janelas e abertura de programas.
Desativando os efeitos ganha-se mais um pouco de desempenho e ainda tem-se o belo visual da interface Aero com funcionalidade reduzida.
Para quem gosta dos efeitos e tem recursos de sobra, a Aero também sofreu melhorias. Em minha opinião, muito funcional e considerando o que é, leve.
Instalar o Windows 7 está quase tão rápido quanto instalar uma distribuição do Linux.
A máquina virtual possui apenas 1 Gb de RAM e um processador Turion TL-50 rodando a 800 Mhz e vídeo on-board com 8 Mb.
O PC real é um Athlon x2 Black Edition com 2 Gb de RAM e vídeo on-board com 256 Mb.
Nos dois a instalação ocorreu sem problemas em menos de uma hora. Minha primeira impressão do Windows 7 foi ótima, o sistema ficou próximo do que a Microsoft tanto promoteu desde o Vista (aparentemente).
A lista das melhorias:
- Interface gráfica aprimorada, com nova barra de tarefas e suporte para telas touch screen e multi-touch
- Internet Explorer 8
- Novo menu Iniciar
- Nova barra de ferramentas totalmente reformulada
- Comando de voz (inglês)
- Leitura nativa de Blu-Ray e HD DVD
- Gadgets sobre o desktop, independentes da Sidebar
- Novos papéis de parede, ícones, temas etc.
- Conceito de Bibliotecas (Libraries), como no Windows Media Player, integrado ao Windows Explorer
- Arquitetura modular, como no Windows Server 2008
- Faixas (ribbons) nos programas incluídos com o Windows (Paint e WordPad, por exemplo), como no Office 2007
- Aceleradores no Internet Explorer 8
- Aperfeiçoamento no uso da placa de vídeo e memória RAM
- UAC personalizável
- Home Groups
- Melhor desempenho
- Windows Media Player 12
- Nova versão do Windows Media Center
- Gerenciador de Credenciais
- Boot otimizado e suporte a boot de VHDs (HDs Virtuais)
- Instalação do sistema em VHDs
- Nova Calculadora, com interface aprimorada e com mais funções
- Reedição de antigos jogos, como Espadas Internet, Gamão Internet e Internet Damas.
Somente o tempo dirá se o Windows 7 vai conseguir conquistar de volta o carisma do público. Mas ao que parece, tem tudo para conseguir...
Ha!
Marcadores:
Impressões,
RC,
Release Candidate,
Windows 7
terça-feira, 2 de junho de 2009
Sobre o BUG de 2038
Muitos já devem ter ouvido falar do BUG do milênio, ou BUG do ano 2000.
Houve um grande alarde na época. Não hoveram grandes problemas, em parte porque muitas pessoas no mundo todo se empenharam em atualizar os computadores potencialmente problemáticos, em parte porque o problema não era tão grande assim.
Bem, agora o problema é diferente e parece ser maior. Pelo menos eu vejo assim.
O BUG:
Sistemas UNIX utilizam uma convenção chamada "UNIX EPOCH" que data de 1 de janeiro de 1970. Deste modo, é utilizado um número inteiro para representar as datas em segundos a partir deste dia.
Ex.: a data de hoje (02/06/09 - 10:57AM) é desde o UNIX EPOCH: 1243951022
Bem, até aí tudo bem certo?
Errado!
Como a tendência é do número aumentar conforme a data se afasta de 1970, e, nos sistemas que armazenam o tempo em 32 bits signed integer (sem tradução) isto fará com que a data reinicie.
Ou seja, o maior valor de um inteiro para ser representado computacionalmente nestes sistemas é de 32 bits.
Ao alcançarmos a data 18 de Janeiro de 2038 ás 9:14:07 PM os computadores não terão mais capacidade de representar o EPOCH. Imagine todos os servidores e aparelhos conectados que utilizam datas para realizar tarefas: rádios, aeroportos, semáforos, alarmes e toda a "parafernália" tecnológica de que dependemos cada vez mais.
Ok! E agora!?
Bem, faltando 26 anos para a data, acredito que teremos bastante tempo para modificar este BUG, porém, já conhecido há muito tempo, até agora não houve um esforço muito grande para corrigi-lo, pelo menos até onde sei.
Muitos especialistas dizem que este BUG não é tão grave quanto o anterior, mas eu acredito que é sim pior pois as funções que se baseiam no EPOCH são largamente utilizadas por programadores no mundo todo, os sistemas baseados em UNIX e BSD(sim, o BSD também tem o mesmo BUG) ganham espaço a cada dia e nossa depêndencia da tecnologia cresce exponencialmente a cada dia.
É esperar para ver.
Ha!
Houve um grande alarde na época. Não hoveram grandes problemas, em parte porque muitas pessoas no mundo todo se empenharam em atualizar os computadores potencialmente problemáticos, em parte porque o problema não era tão grande assim.
Bem, agora o problema é diferente e parece ser maior. Pelo menos eu vejo assim.
O BUG:
Sistemas UNIX utilizam uma convenção chamada "UNIX EPOCH" que data de 1 de janeiro de 1970. Deste modo, é utilizado um número inteiro para representar as datas em segundos a partir deste dia.
Ex.: a data de hoje (02/06/09 - 10:57AM) é desde o UNIX EPOCH: 1243951022
Bem, até aí tudo bem certo?
Errado!
Como a tendência é do número aumentar conforme a data se afasta de 1970, e, nos sistemas que armazenam o tempo em 32 bits signed integer (sem tradução) isto fará com que a data reinicie.
Ou seja, o maior valor de um inteiro para ser representado computacionalmente nestes sistemas é de 32 bits.
Ao alcançarmos a data 18 de Janeiro de 2038 ás 9:14:07 PM os computadores não terão mais capacidade de representar o EPOCH. Imagine todos os servidores e aparelhos conectados que utilizam datas para realizar tarefas: rádios, aeroportos, semáforos, alarmes e toda a "parafernália" tecnológica de que dependemos cada vez mais.
Ok! E agora!?
Bem, faltando 26 anos para a data, acredito que teremos bastante tempo para modificar este BUG, porém, já conhecido há muito tempo, até agora não houve um esforço muito grande para corrigi-lo, pelo menos até onde sei.
Muitos especialistas dizem que este BUG não é tão grave quanto o anterior, mas eu acredito que é sim pior pois as funções que se baseiam no EPOCH são largamente utilizadas por programadores no mundo todo, os sistemas baseados em UNIX e BSD(sim, o BSD também tem o mesmo BUG) ganham espaço a cada dia e nossa depêndencia da tecnologia cresce exponencialmente a cada dia.
É esperar para ver.
Ha!
segunda-feira, 1 de junho de 2009
Desenvolvedor cria processador "à mão"
Leia na íntegra em geek.com.br.
"Criado por Steve Chamberlain, um desenvolvedor de videogames, o BMOW (ou Big Mess of Wires – Grande confusão de fios, em tradução livre) é um processador totalmente “feito em casa” a partir da interconexão de cerca de 50 chips lógicos mais simples usando centenas de metros de fios, num processo delicado e propenso a erros conhecido como wire-wrapping."
Interessante a idéia do rapaz de produzir um processador à mão, isto ajuda bastante a entender os conceitos, uma vez que, a maioria das pessoas que trabalha neste ramo conhece milhares de "conceitos", mas o caráter prático fica sempre na imaginação.
Acredito inclusive que todos que trabalham com informática foram aquele tipo de criança que desmontava todos os brinquedos para ver como funcionava. Pelo menos eu fui e conheço muitos que também o faziam rsrs
"Criado por Steve Chamberlain, um desenvolvedor de videogames, o BMOW (ou Big Mess of Wires – Grande confusão de fios, em tradução livre) é um processador totalmente “feito em casa” a partir da interconexão de cerca de 50 chips lógicos mais simples usando centenas de metros de fios, num processo delicado e propenso a erros conhecido como wire-wrapping."
Interessante a idéia do rapaz de produzir um processador à mão, isto ajuda bastante a entender os conceitos, uma vez que, a maioria das pessoas que trabalha neste ramo conhece milhares de "conceitos", mas o caráter prático fica sempre na imaginação.
Acredito inclusive que todos que trabalham com informática foram aquele tipo de criança que desmontava todos os brinquedos para ver como funcionava. Pelo menos eu fui e conheço muitos que também o faziam rsrs
Marcadores:
DIY,
Faça você mesmo,
Processador
Assinar:
Postagens (Atom)