User Agent do Internet Explorer 11 muda e quebra um monte de projetos

internet-explorer-stopped-working
Fala galerinha…. Estou sumido a muito tempo aqui do blog… Vou tentar voltar a postar coisas… Serão posts curtos e objetivos, então qualquer dúvida pode me procurar nos comentários… (Preciso arrumar um tempo pra limpar esse layout horroso) :p :p

Hoje, após algumas reclamações de usuários, descobri que o IE 11 mudou seu user agent, e isso quebra vários javascripts.

Verifique o seu projeto e veja se não foi impactado.

Antes um user agent, por exemplo do IE 10 vinha assim:
Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)

Então no seu javascript, para verificar se o navegador era IE, você pega o user agent e procura pela string MSIE. Provavelmente era um código assim:
this.navigator.userAgent().match(/MSIE\s([\d]+)/);

Com o novo e belíssimo IE 11, além de bonito e rápido, ele não podia perder a reputação e continuar uma droga… O user agent mudou para:
Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko

Com isso seu belíssimo javascript retorna que você não está no IE e sua aplicação se comporta de forma completamente diferente.

Para resolver isso, após muita muita pesquisa, forums, stack overflows, confesso que vi soluções que davam vontade de chorar… Então resolvi juntar um pedacinho de cada, e cheguei na seguinte solução:

1
2
3
4
5
6
7
8
9
10
function isIE() {
 return (
  (this.navigator.appName() == 'Microsoft Internet Explorer') ||
  this.navigator.userAgent().match(/MSIE\s([\d]+)/) ||
  (
   (this.navigator.appName() == 'Netscape') &&
   (new RegExp("Trident/.*rv:([0-9]{1,}[\.0-9]{0,})").exec(this.navigator.userAgent()) != null)
  )
 );
}

Assim eu consigo fazer 3 verificações antes de dizer que não é IE. Se o navegador se chama “Internet Explorer”, se ele tem uma versão válida de MSIE ou se ele é um Netscape com alguma versão de Trident.

Já estou rodando esse código em produção e o problema foi solucionado. Espero que sirva para mais alguém…

Share

OpenCart: Com o aumento do dolar, veja como atualizar o preço de todos os seus produtos via SQL

opencart-634x250

Com o aumento do dolar, resolvi postar aqui como fazer para aumentar o preço de todos os seus produtos baseado numa porcentagem.

No caso tive que aumentar 0.05% em cima de todos os produtos.

Para fazer isso, você precisa rodar uma linha SQL diretamente no servidor (pode ser feito facilmente pelo phpmysql admin do seu provedor de hospedagem)

UPDATE opencart_product SET price = round(price*1.05,2)

Onde “opencart_product” é o nome da minha tabela de produtos e “1.05” é o valor que quero deixar no produto, no caso 100% + 0.05%.

Você também pode baixar o valor do produto proporcionalmente dessa mesma forma. Se você tirar 10% de todos os produtos a query ficaria assim:

UPDATE opencart_product SET price = round(price*0.9,2)

Espero que essa informação seja útil para você, assim como foi para mim 🙂

Share

Code School vai liberar 48 horas de acesso gratuito aos cursos online

249163_519143868133826_1683470596_n

Em parceria com a New Relic, a Code School está oferecendo 48 horas de acesso gratuito a seu conteúdo.

É uma boa oportunidade para quem quer ver como os cursos são.

O link para acesso direto a promoção é: http://www.codeschool.com/free-weekend

De acordo com o site da code school, a oferta é valida apenas para os dias 25 e 26 de maio/2013.

Então vamos aproveitar essas 48 horas de aprendizado 🙂

Share

Globo.com abre novas vagas de estágio para agosto de 2013

http://www.globo.com/estag

Estão abertas mais uma vez as inscrições para estagiar na Globo.com.

Para se candidatar o periodo de formatura exigido é: agosto/2014 a agosto/2015

Não perca essa oportunidade de participar no desenvolvimento de um dos maiores portais da internet Brasileira… As inscrições podem ser feitas pelo site http://www.globo.com/estag

Etapas do processo seletivo: ( 2013 )
Inscrições:  ainda não informado
Prova On-line: ainda não informado
Entrevista Coletiva: ainda não informado
Painel: ainda não informado
Entrevista com o Gestor: ainda não informado
Início do Estágio: Agosto de 2013

Fique atento ao seu email, pois as convocações iniciais deverão ser feitas por meio dele
Visite também o site para mais detalhes: http://www.globo.com/estag

Informações adicionais:
Quem pode participar?
Estudantes matriculados em cursos de nível superior, com previsão de formatura para agosto de 2014 ou  agosto de 2015, compatíveis com as áreas/vagas existentes, disponíveis para a cidade do Rio de Janeiro

Existem vagas para que áreas?
Vagas em diversas áreas para estudantes dos mais variados cursos: Administração, Psicologia, Comunicação Social, Comunicação Visual, Design, Desenho Industrial, Estatística, Engenharia de Produção, Cursos das áreas de Tecnologia (Ciência da Computação, Engenharia da Computação, Análise de Sistemas) entre outros

Aproveite e dê uma olhada no restante do blog. Dicas importantes podem ser obtidas nos comentários dos outros posts antigos sobre os processos seletivos, principalmente nos posts de processos seletivos antigos, pois muitas duvidas foram respondida pelos comentários… Fique atento para não haver repetição de dúvidas…

ATENÇÃO para esta dica adicional =) Se a sua previão de formatura não estiver entre a solicitada (ago/14 a ago/15), inscreva-se mesmo assim. Quem sabe você não consegue entrar… 😉

Como sempre estou a disposição para responder qualquer pergunta (Dado que eu fui um estagiário e também um efetivado na Globo.com)

Dependendo da pergunta/dúvida, posso pedir para que alguém do RH da Globo.com para responder 😉

531745_437006493041878_8651260_n

 

Boa sorte a todos !

Share

Você sabia que dá para usar versões diferentes de ruby na mesma máquina ?

RVM ou Ruby Version Manager é o gerenciador de versões Ruby.

Com ele você pode rodar projetos com rubys diferentes (exemplo: com a versão 1.8.7 e 1.9.3) mantendo os ambientes e as gems instaladas isoladas.

Conheça mais sobre o RVM em: https://rvm.io/

Ou se preferir, pode ir direto para a página de instalação em https://rvm.io/rvm/install/

Um outro bom exemplo de uso do RVM, não é só a utilização de multiplos Rubys, e sim a separação que ele faz entre os projetos.

Você pode criar com o RVM um “Gemset”, que é um grupo isolado onde se instalada as gem de seu projeto. Com isso você pode usar o mesmo ruby, e ter mais de um gemset configurado.

Share

Globo.com abre novas vagas de estágio para janeiro de 2013

http://www.globo.com/estag

Estão abertas mais uma vez as inscrições para estagiar na Globo.com.

Para se candidatar o periodo de formatura exigido é: dezembro/2013 a dezembro/2014

Não perca essa oportunidade de participar no desenvolvimento de um dos maiores portais da internet Brasileira… As inscrições podem ser feitas pelo site http://www.globo.com/estag

Etapas do processo seletivo: ( 2012 )
Inscrições:  ainda não informado
Prova On-line: ainda não informado
Entrevista Coletiva: ainda não informado
Painel: ainda não informado
Entrevista com o Gestor: ainda não informado
Início do Estágio: Janeiro de 2013

Fique atento ao seu email, pois as convocações iniciais deverão ser feitas por meio dele
Visite também o site para mais detalhes: http://www.globo.com/estag

Informações adicionais:
Quem pode participar?
Estudantes matriculados em cursos de nível superior, com previsão de formatura para dezembro de 2013 ou  dezembro de 2014, compatíveis com as áreas/vagas existentes, disponíveis para a cidade do Rio de Janeiro

Existem vagas para que áreas?
Vagas em diversas áreas para estudantes dos mais variados cursos: Administração, Psicologia, Comunicação Social, Comunicação Visual, Design, Desenho Industrial, Estatística, Engenharia de Produção, Cursos das áreas de Tecnologia (Ciência da Computação, Engenharia da Computação, Análise de Sistemas) entre outros

Aproveite e dê uma olhada no restante do blog. Dicas importantes podem ser obtidas nos comentários dos outros posts antigos sobre os processos seletivos, principalmente nos posts de processos seletivos antigos, pois muitas duvidas foram respondida pelos comentários… Fique atento para não haver repetição de dúvidas…

ATENÇÃO para esta dica adicional =) Se a sua previão de formatura não estiver entre a solicitada (dez/13 a dez/14), inscreva-se mesmo assim. Quem sabe você não consegue entrar… 😉

Como sempre estou a disposição para responder qualquer pergunta (Dado que eu fui um estagiário e também um efetivado na Globo.com)

Dependendo da pergunta/dúvida, posso pedir para que alguém do RH da Globo.com para responder 😉

Boa sorte a todos !

Share

Globo.com: Vagas para desenvolvedores – Venha trabalhar com a gente

Conhece alguém da área de informatica ? Gostaria de trabalhar na maior empresa de conteúdo do Brasil ?

Mande seu curriculum para [email protected] e venha trabalhar com a gente.

Entrei como estagiário em 2008 e estou por aqui como analista pleno.
Nem preciso falar que EU recomendo a empresa né ? 🙂

Para estágio segue o link: http://estag.globo.com

Qualquer coisa estou a disposição para tirar dúvidas 🙂

Share

Dropbox aumentará o espaço em disco dos seus planos

O Dropbox anunciou hoje em seu blog o aumento dos planos de 50GB e 100GB para 100GB e 200GB.

Para os atuais clientes pagantes do dropbox essa mudança vai ocorrer automaticamente nessa madrugada. Nenhuma alteração foi feita com relação aos valores dos planos… Ou seja, $9 por 100GB agora 🙂

Também foi anunciado um terceiro plano de 500GB, para que precisa de mais espaço.

Todos os assinante do dropbox terão oportunidade de convidar seus amigos a experimentarem o plano Pro 100GB num trial de 3 meses.

Essa mudança aconteceu em uma excelente hora… Meu dropbox estava quase chegando a 95% de uso 🙂

Assim que liberarem o link para o trial, eu coloco aqui para quem quiser experimentar o plano de 100GB por 3 meses…

Pessoal, infelizmente o DropBox liberou apenas 1 convite por usuário assintante… Então não poderei liberar o link aqui =/ Mas não desanimem… Podem assinar o DropBox tranquilamente pois o serviço é excelente… 🙂

Share

10000 coisas que todos os estudantes de computação deveriam fazer antes da formatura


Esse post é uma tradução do original “10000 things all ICS students should do before graduating”

Resolvi traduzir esse post pois achei a ideia do autor muito boa.

Hoje, muitos alunos de análise de sistemas, ciência da computação, engenharia da computação, e outros cursos da área, estão sendo formados com base em tecnologias antigas e ultrapassadas…

Por exemplo, creio que 80% de uma turma de um último período em analise de sistemas, não vai saber que a linguagem Ruby existe, ou muito menos a definição de TDD (Coisas que são utilizados hoje em dia em empresas grandes como a Globo.com).

Digo isso pois já entrevistei muitos candidatos para estágio, e o nível do pessoal está ainda bem no básico. Mesmo sabendo que para estagiar, você não precisa “saber nada”, existe algumas coisas que podem te ajudar a “se classificar melhor” numa seleção técnica.

Então abaixo segue a lista na integra retirada do blog mencionado acima:

0000 – Registrar seu próprio domínio
0001 – Instalar o Apache web server e configura-lo de uma forma não tão simples (Por exemplo, múltiplos sites rodando no mesmo apache)
0010 – Instale o WordPress e mantenha seu próprio Blog. Escreva bem os seus posts e regularmente. Uma boa escrita é uma habilidade fundamental para dominar esta profissão.
0011 – Rode seu próprio site na sua casa ou numa empresa de hospedagem.
0100 – Crie pelo menos uma aplicação web LAMP (Linux, Apache, Mysql, PHP). Seria legal se escrevesse duas. Uma em PHP e outra em Python…. Ou em Ruby (LAMR ?? haha)
0101 – Tenha seu próprio servidor (físico ou virtual) na nuvem
0110 – Instale o VMWare/Virtualbox ou equivalente para poder rodar mais de um sistema operacional em seu laptop
0111 – Configure seu roteador da sua cada para servir um site ou alguns arquivos do computador da sua casa para os seus amigos acessarem…
1000 – Use um sniffer de pacote (Wireshark) para aprender e ver as requisições de rede que são feitas entre seu computador e um jogo on-line favorito.
1001 – Faça contribuições a projetos open-source.
1010 – Desenvolva um aplicativo que use pelo menos umas das APIs Web mais populares como a do Facebook Connect ou do Google.
1011 – Habilite o Google Adsense em seu blog ou site, e ganhe um pouco de dinheiro baseado no tráfego virtual.
1100 – Compilar um projeto de código aberto complicado a partir do zero. Tente o FFMpeg por exemplo !
1101 – Ler obras de literatura e, além de desfrutar a leitura, preste muita atenção à forma como o autor conta a história e faz uso das palavras. Os programas devem ser tão cuidadosamente escritos como aquelas obras de arte!
1110 – Obter-se envolvido em um projeto de software onde os requisitos mudam no meio – cerca de 0,01% dos projetos pessoais e cerca de 99,99% dos projetos do mundo real, assim que encontrar um deste último tipo, concluir o projeto com a paciência e ter capacidade de aceitar críticas de forma construtiva.
1111 – Escrever um aplicativo usando Map-Reduce. Executá-lo no Google app-engine ou na Amazon EC2.

Eu particularmente teria adicionado na lista mais alguns pontos:

– Colocar todo código desenvolvido em algum “controle de versão” (Exemplo: Git)
– Estudar sobre testes automatizados e desenvolver utilizando a técnica TDD
– Considerando que a maioria das empresas utilizam um linux em seus servidores de produção, estudar conceitos básicos de unix e saber dar um ssh de um servidor para outro, por exemplo.

Espero que as dicas sirvam para alguns estudantes 🙂 Não deixe de ler o post original na integra: http://tagide.com/blog/2011/06/things-ics-students-should-do-before-graduating/

Share

Tecnologia e informação no lugar certo !