sábado, 12 de março de 2011

Linux: descubra qual das várias distribuições é a melhor para você

Um sistema operacional pago como o Windows pode sair um pouco caro, não é mesmo? Então por que não tentar uma plataforma aberta? Caso você queira se arriscar no universo Linux, mas não sabe por onde começar... 


O site Linux Distribution Chooser oferece um questionário para ajudar na escolha da melhor versão Linux para você.   Como nem todo mundo está acostumado com um sistema operacional diferente do Windows, as perguntas servem justamente para saber o nível de conhecimento que você tem sobre outras plataformas, e também para conhecer quais são suas necessidades no PC.


Para responder as questões e conhecer melhor as plataformas abertas disponíveis é só clicar aqui e acabar com as suas dúvidas.

sexta-feira, 11 de março de 2011

Com medo de terremoto, brasileiro recorre à oração no Japão

O desespero tomou conta do brasileiro Rafael Ynamoto, 37, quando ele sentiu seu apartamento em um prédio de cinco andares tremer na cidade de Oyama-shi (Japão) nesta sexta-feira. Sozinho e apavorado, ele conta que começou a orar para aliviar a tensão.

"Peguei minha bíblia e pedi a Deus que me protegesse, mas balançava muito. Eu pensei: vou correr, porque não dá tempo de orar", relata. 

Na rua, Ynamoto encontrou trânsito caótico e lojas de conveniência lotadas. As pessoas compravam água e materiais de primeiros socorros, conta.
Com medo, ele voltou para casa para pegar alguns pertences. Temendo um desabamento, pegou seu carro e foi para um estacionamento.
"Faz 21 anos que estou aqui [no Japão] e é a primeira vez que eu sinto esse medo. Estou traumatizado. Você sente balançar como se estivesse dentro de um barco", relata. 
Fonte: Folha Online

Deputados avaliam regulamentação de profissionais de TI

As profissões de analista de sistemas e técnico em informática serão regulamentadas se o Senado e a Câmara aprovarem o projeto de lei do Senado (PLS) 607/07, do então senador Expedito Júnior (PR-RO). 

Atualmente a proposta aguarda a decisão final, em turno suplementar, da Comissão de Assuntos Sociais (CAS), onde é relatada pela senadora Marisa Serrano (PSDB-MS).
De acordo com o texto em exame na CAS, a profissão de analista de sistemas seria exercida por pessoas diplomadas em análise de sistemas, ciência da computação, processamento de dados ou engenharia de software. Também estariam autorizados os profissionais que tenham exercido a profissão comprovadamente por, pelo menos, cinco anos, assim como os que tiverem feito graduação no exterior e revalidado seus diplomas no Brasil.

A responsabilidade técnica por projetos e sistemas para processamento de dados, informática e automação, assim como a emissão de laudos, relatórios e pareceres técnicos seria privativa de analista de sistemas.
Já a profissão de técnico em informática, ainda de acordo a proposta, seria exercida por profissionais com curso técnico de informática ou de programação de computadores (em nível de ensino médio ou equivalente) e por quem tenha exercido essa profissão, comprovadamente, por pelo menos quatro anos.

Esses profissionais teriam, ainda segundo a proposta, uma jornada de trabalho de 40 horas semanais. Compensação de horários e redução da jornada poderiam ser feitas mediante acordo ou convenção coletiva de trabalho.
Para os profissionais com atividades com esforço repetitivo, a jornada seria de 20 horas semanais com, no máximo, cinco horas diárias, incluído descanso de 15 minutos.

O projeto já foi discutido em audiências públicas e aprovado pelas comissões de Ciência, Tecnologia, Inovação, Comunicação e Informática (CCT) e de Constituição, Justiça e Cidadania (CCJ).
Na CAS, onde receberá decisão terminativa, a proposta foi aprovada na forma de substitutivo, o que exige a votação em turno suplementar. Depois de aprovada na nesta comissão, a matéria será enviada à Câmara dos Deputados.
*Com informações da Agência Câmara

TOTVS inaugura novo centro de desenvolvimento de software

IT Careers - Convergência Digital


Com o objetivo de estruturar seu crescimento, a TOTVS inaugura nesta sexta-feira (11/03), um novo Centro de Desenvolvimento de software em São Paulo, que funcionará em um prédio de mais de 3 mil m2, localizado na Marginal Tietê, próximo a ponte Cruzeiro do Sul.

Esse novo espaço foi pensado para acomodar as equipes de desenvolvimento de forma ainda mais estratégica, dividindo-as pelos segmentos de atuação da companhia (saúde, agroindústria, jurídico, financial services, distribuição e logística, varejo, educacional, construção e projetos, manufatura e serviços). Ao consolidar estas equipes, o novo Centro de Desenvolvimento São Paulo tem como principal foco a continua qualidade de todos os produtos e a construção de uma solução global da TOTVS, tornando-a uma referência mundial. O espaço abriga, ainda, as equipes de suporte, atendimento ao cliente e fábrica de software.

Aproximadamente 700 profissionais vão trabalhar no local, que conta com toda a infraestrutura e tecnologia necessárias para uma fábrica de software, além de possuir uma ampla área de convivência e toda facilidade de acesso por ser próximo ao metrô, terminal de ônibus e Shopping Center.

A inauguração deste novo Centro de Desenvolvimento vem ao encontro dos altos investimentos realizados pela companhia em Pesquisa e Desenvolvimento (P&D). No ano passado foram R$ 150 milhões, resultando em grandes novidades para o mercado. Esse investimento tem sido aplicado no desenvolvimento de aplicações de interatividade para TV Digital, na integração de soluções verticais às soluções de back-office e no desenvolvimento de novas versões.

iPads representam 83% dos 18 milhões de tablets vendidos no mundo em 2010

Apesar do surgimento de concorrentes, o iPad ainda lidera com folga a venda de tablets. A Apple ficou com 83% de participação nesse mercado no ano passado, segundo dados do IDC divulgados nesta quinta (10). Em 2010, foram comercializados cerca de 18 milhões de tablets no mundo.
De acordo com o levantamento do instituto, foram entregues às lojas no último trimestre de 2010 cerca de 10,1 milhões de tablets – mais que o dobro do número total do terceiro trimestre, 4,5 milhões.

A participação da Apple no mercado de tablets caiu de 93% para 73% no último trimestre de 2010, ficando com 83% na média do ano. A principal concorrente da empresa é a Samsung, com o Galaxy Tab, que conquistou 17% do mercado de tablets.

Mesmo com o lançamento de novos tablets em 2011, o IDC projeta que a Apple manterá de 70 a 80% da participação nesse mercado. O que ajuda a empresa é o início das vendas do iPad 2 já no mês de março (nesta sexta nos Estados Unidos e dia 25 em mais 26 países), antes que a primeira geração de tablets da concorrência chegue às lojas.
Estados Unidos, Europa Ocidental e Ásia/Pacífico (exceto Japão) foram responsáveis por 89% de todos os tablets comercializados no último trimestre de 2010.

Notícia completa em: Noticia completa

quinta-feira, 10 de março de 2011

Série Java Bizarro - Capítulo 8

Isso sim é uma normalização de Strings.... sem comentários....

================================
  if ( ( strEvGen.equals ( "Não" ) ) || ( strEvGen.equals ( "Nao" ) ) || ( strEvGen.equals ( "NAO" ) ) || ( strEvGen.equals ( "Não" ) ) ) {
        m_strRetorno = "NAO";
      } else if ( ( strEvGen.equals ( "Sim" ) ) || ( strEvGen.equals ( "SIM" ) ) ) {
        m_strRetorno = "SIM";
      }

================================

Série Java Bizarro - Capítulo 7

Tanto trabalho... por nada !!!!
==============================

     String strConstante = ( String ) objParam.get ( 0 );
     try {
       intIndexElemento = strTag.lastIndexOf ( SEPARADOR_ESTRUTURA );
       strAcaoElemento = strTag.substring ( 0, intIndexElemento + 1 ) + "acao";
       stuAcao = m_objCommon.mObterValorEvGen ( stuEvGen, strAcaoElemento, objHashEvGen, null, false, objSti );
       strAcao = ( String ) stuAcao.get ( 0 );

       if ( strAcao == null )
         return null;

       // se uma constante foi passada como parâmetro no mnemônico então ela consiste no retorno da função
       if ( !strConstante.equals ( "" ) ) {
         strAux = strConstante;
       } else {
         strAux = strValor;
       }

       strTipoOS = m_objCommon.mObterValorEvGen ( stuEvGen, "root;case;dados_os;case_type", objHashEvGen, null, false, objSti ).firstElement ().toString ();

       if ( ( strTipoOS.equalsIgnoreCase ( "OS - Retirada" ) ) ||
            ( strAcao.equalsIgnoreCase ( ACAO_ADICIONAR ) ) ||
            ( strAcao.equalsIgnoreCase ( ACAO_MODIFICAR ) ) ) {
         strRetorno = strAux;
       } else {
         strRetorno = strAux;
       }

     } finally {
       return strRetorno;

==============================

Série Java Bizarro - Capítulo 6

Condição... pra quê ?
========================
if ( srtValorPonta.equals ( "1" ) ) {

  m_strRetorno = ( String ) m_objCommon.mObterValorEvGen ( stuEvGen, strTagOrigem, objHashEvGen, null, false, objSti ).firstElement ();
} else {
  m_strRetorno = ( String ) m_objCommon.mObterValorEvGen ( stuEvGen, strTagOrigem, objHashEvGen, null, false, objSti ).firstElement ();
}

========================

Série Java Bizarro - Capítulo 5

Verificação inútil....
========================

 if ( !strTipoOS.equalsIgnoreCase ( "OS - Retirada" ) ) {
        for ( int intIndice = 0; intIndice < objAcaoAtrib.size (); intIndice++ ) {
           if ( ( strTipoOS.equalsIgnoreCase ( "OS - Retirada" ) ) ||
                ( objAcaoAtrib.get ( intIndice ).equals ( ACAO_ADICIONAR ) ) ||
                ( objAcaoAtrib.get ( intIndice ).equals ( ACAO_MODIFICAR ) ) ) {
             intIndexAcaoValida = intIndice;
           }
        }
 }

========================

Série Java Bizarro - Capítulo 4

Como (não) montar um XML...
============================================

public String mValorCampoXML(String strXML, String strCampo, SimpleTranslatorInterface objSti)
   {
     int intPosIni, intPosFim;
     intPosIni = strXML.indexOf("<"+ strCampo+ ">");
     if (intPosIni<=0 )
       return "";
     intPosIni = intPosIni + strCampo.length() + 2;
     intPosFim = strXML.indexOf("</"+ strCampo+ ">");
     strXML = strXML.substring(intPosIni,intPosFim);
     return strXML.trim();
   }

============================================

Série Java Bizarro - Capítulo 3

Sem muito o que comentar....

===============================================
protected String checkRule(String fieldName, String value) throws clsAcknowledgementException {
        try {
            // ...all the data check has been done within target's transformers
            return value;
        } catch (Exception e) {
            throw new clsAcknowledgementException("Ocorreu um erro inesperado !!!", TRANSFORMER_ERROR, e);
        }
    }
===============================================

Série Java Bizarro - Capítulo 2

O bom e velho "catch vazio"..... executem esse método e torçam para nunca ocorrer uma exceção !!!

========================================

 public void run()
    {
        try
        {
            m_objSocket = new Socket(m_strHost, m_intPorta);
        }
        catch(IOException e)
        {
        }
    }

========================================

Série Java Bizarro - Capítulo 1

Essa série irá demonstrar trechos de códigos bizarros que já encontrei durante a vida de desenvolvedor Java.
Segue o primeiro post....

==========================================
private String mObtenerEvento (EventBody evtIn) throws IndexOutOfBoundsException {
String BusinessEvent= evtIn.getEventDef().getName();
String Acao;

if ( BusinessEvent.equalsIgnoreCase(EVT_STRING_EVENT)) {
Acao= ((String)(evtIn.getParameters())[0]).substring(0, 4);
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_ATUA)) return EVT_STRING_EVENT_ATUA;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_FPAR)) return EVT_STRING_EVENT_FPAR;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_FTOT)) return EVT_STRING_EVENT_FTOT;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_COPI)) return EVT_STRING_EVENT_COPI;
if (Acao.equalsIgnoreCase(EVT_STRING_TST_AUTO_BD)) return EVT_STRING_TST_AUTO_BD;
if (Acao.equalsIgnoreCase(EVT_STRING_FECH_OS_SAC)) return EVT_STRING_FECH_OS_SAC;
if (Acao.equalsIgnoreCase(EVT_STRING_ATU_EST_OS_SAC)) return EVT_STRING_ATU_EST_OS_SAC;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_FIGU)) return EVT_STRING_EVENT_FIGU;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_RDSI)) return EVT_STRING_EVENT_RDSI;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_ATUALIZAR_BAUTO_IBUS)) return EVT_STRING_EVENT_ATUALIZAR_BAUTO_IBUS;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_ATUALIZAR_BAUTO_RBUS)) return EVT_STRING_EVENT_ATUALIZAR_BAUTO_RBUS;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_ATUALIZAR_BAUTO_IPLA)) return EVT_STRING_EVENT_ATUALIZAR_BAUTO_IPLA;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_ATUALIZAR_BAUTO_RPLA)) return EVT_STRING_EVENT_ATUALIZAR_BAUTO_RPLA;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_ATUALIZAR_BAUTO_ITRO)) return EVT_STRING_EVENT_ATUALIZAR_BAUTO_ITRO;
if (Acao.equalsIgnoreCase(EVT_STRING_EVENT_ATUALIZAR_BAUTO_RTRO)) return EVT_STRING_EVENT_ATUALIZAR_BAUTO_RTRO;
//Fim: 29/09/2003
if (Acao.equalsIgnoreCase(EVT_STRING_CRIAR_OS_PAP_SAC)) return EVT_STRING_CRIAR_OS_PAP_SAC;
if (Acao.equalsIgnoreCase(EVT_STRING_CANCELAR_OS_PAP_SAC)) return EVT_STRING_CANCELAR_OS_PAP_SAC;
if (Acao.equalsIgnoreCase(EVT_STRING_MODIFICAR_OS_PAP_SAC)) return EVT_STRING_MODIFICAR_OS_PAP_SAC;
if (Acao.equalsIgnoreCase(EVT_STRING_ENCERRARFILA_OS_PAP_SAC)) return EVT_STRING_ENCERRARFILA_OS_PAP_SAC;
}
return evtIn.getEventDef().getName();
}// fim do metodo mObtenerEvento

===========================================
Afinal de contas, qual o motivo de tudo isso ???