segunda-feira, 23 de novembro de 2015

Primeira Lei da Probabilidade

"A probabilidade de que dois eventos ocorram nunca pode ser maior que a probabilidade de que cada evento ocorra individualmente".

Por que não? Aritmética simples:
Chance de A = Chance de A & B  + Chance de A - B


"Se os detalhes que recebemos se adequarem à imagem mental que temos de alguma coisa, então, quanto maior o número de detalhes numa situação, mais real ela parecerá, e, portanto, consideraremos que será mais provável - muito embora o ato de acrescentarmos qualquer detalhe do qual não tenhamos certeza a uma conjectura a torne menos provável."

terça-feira, 6 de outubro de 2015

Pulando campos (tabulando) ao pressionar Enter

Não sei quem foi o infeliz que teve a infeliz ideia de fazer isso desse jeito, mas por algum motivo infeliz, ainda tem gente que acha que, pressionando 'Enter', o cursor do infeliz deve pular para o próximo campo infeliz, ao invés de, alegremente, enviar o formulário atual.

Enfim.

 function navegarEnter(){  
   $(document).on('keypress', 'input,select,textarea', function(event){  
     if(event.keyCode === 13) {  
       $('input,select,textarea')[$('input,select,textarea').index(this)+1].focus();  
       event.preventDefault();  
     }  
   });  
 }  


Coloquei como função mesmo, porque deu preguiça de fazer um plugin.

quinta-feira, 6 de agosto de 2015

Utilizando scripts sh com parâmetros no Ubuntu

..provavelmente funciona em qualquer SO linux, mas enfim.

O exemplo abaixo é um script que recebe como parâmetro uma mensagem pra ser usada no commit do git.

 #!/bin/sh  
 MENSAGEM="$1"  
 cd /var/www/pastadoprojeto/  
 git add .  
 git commit -m "$MENSAGEM"  
 git push origin master   

Depois de dar um chmod +x, chama ele assim:

 ./script.sh mensagem do commit

quarta-feira, 5 de agosto de 2015

Escrevinhando a data em pt-br no mysql

Esta query é pra colocar o mysql em pt-br:
 SET lc_time_names = 'pt_BR';  

.. e essa outra, pra pegar a data:
 select date_format(now(), '%W, %d de %M de %Y')  

O resultado sai assim:

 quarta, 05 de agosto de 2015  

(na verdade, o resultado depende da data e hora atual, mas isso não é o importante)

quinta-feira, 23 de julho de 2015

Forçando o usuário a digitar em um campo com jQuery

É chato, mas às vezes é necessário.

 $('.campochato').on( "keydown contextmenu", function(event) {  
     switch(event.which){  
       case 3://botao direito  
       case 17://ctrl  
       case 86://ctrl+v  
         event.preventDefault();  
         break;  
     }  
   });  

O evento 'contextmenu' captura o clique no botão direito.

sexta-feira, 12 de junho de 2015

Procurando em um arquivo no shell

  grep 'palavras' arquivo > resultado.log  

Não esquecer de escapar os caracteres especiais:
  grep '192\.168\.0\.1' access_log > resultado.log  

terça-feira, 12 de maio de 2015

Teste de estudo para certificação

What the following code will print out?

 echo true ? 'a':true ? 'b' : 'c';  


//resposta: b
//a condição "true ? 'a':true" é avaliada como true
//e por isso retorna 'b', pois é a opção da esquerda

terça-feira, 31 de março de 2015

Time is Never on my side

Mais um problema com datas, dessa vez em javascript.

 var str = "05/04/2015 23:59";  
 var tmp = str.split(' ');  
 var data = tmp[0].split('/'); 
 
 var data_certa = new Date();  
 var data_errada = new Date();
  
 data[0] = parseInt(data[0]);  
 data[1] = parseInt(data[1]);  
 data[1] = data[1] -1;  
 data[2] = parseInt(data[2]);  

 data_certa.setFullYear(data[2]);  
 data_certa.setDate(data[0]);  
 data_certa.setMonth(data[1]);//setmonth deve vir depois de setdate  

 data_errada.setFullYear(data[2]);  
 data_errada.setMonth(data[1]);  
 data_errada.setDate(data[0]); 
 
 console.log(data_certa);  //Sun Apr 05 2015 12:33:04 GMT-0300 (BRT)
 console.warn(data_errada);  //Tue May 05 2015 12:33:04 GMT-0300 (BRT)


Por algum motivo, setMonth deve ser chamado depois de setDate, senão a data acaba indo parar no mês que vem.

Quem disse que a ordem dos fatores não altera o produto, não programava em javascript.