segunda-feira, 28 de setembro de 2009

O que eu aprendi nessa semana...

Python
  • Para compilar no PY2EXE, no lugar de Console= usar Windows=, assim para de exibir a tela de prompt a cada execução.
  • Entre dois códigos compilados a diferença está no EXE e no Library.zip....
jQuery
  • Funções Personalizadas se faz através da seguninte chamada: $.fn.FuncaoNova = function() { $(this).datepicker(); }
  • this no caso acima é o troço que chamou, e não a si mesmo, útil para fazer outra chamada;
Pouca coisa, é que eu esqueci o resto...

domingo, 27 de setembro de 2009

WebApp, por favor...

Programadores, ao criarem uma aplicação que tenha apenas a intenção de processar dados, como os programas da Receita Federal, porque não disponibilizar os programas em uma versão Web, mantendo a versão desktop para quem não quiser usá-la, ou mesmo um WebApp de código aberto, que poderia ser executado na máquina do cliente, caso este saiba instalá-lo, poderia ser, em PHP, por exemplo...
Ficaria muito mais simples, alternar de sistema operacional, alterar a resolução da tela, já que a maioria dos browsers atualmente suporta zoom decente...
Já um aplicativo Java, fica limitado à sua janela, que é por padrão 800x600, e em um monitor mais novo, fica em 1/4 da tela...
Uma janelinha mini, com letras pequenas...

segunda-feira, 21 de setembro de 2009

MySQL - Corrigindo o Evil BLOB

Problema

Bom, eu havia convertido um DBF do DBase para uma tabela do MySQL. Como estava dando erro com o campo TEXT, criei campos BLOB.
O problema que eu esqueci que havia feito isso, o sistema estava operando normalmente.
Só apareceu o problema quando resolvi migrar o site para UTF-8, o site era Latin1 (ISO-8859-1)...
Todos os campos TEXT estavam corretos, mas os campos BLOB não...
Ao tentar converter com MODIFY o erro era algo do tipo:
ERROR 1366 (HY000): Incorrect string value: '\xC7\xC3O' for column 'HIST' at row 5
O problema é que no campo BLOB estavam salvos os dados em Binário, e o MySQL não sabia o que fazer com os caracteres com acentos.
Solução usada
Rodei no PHP o seguinte código:
$mysqlA = new mysqli("localhost","user","
senha","db");
$mysqlB = new mysqli("localhost","user","senha","db");
$sql = "SELECT * FROM table";
$queryA = $mysqlA->query($sql);
while ($line = $queryA->fetch_array(MYSQL_ASSOC))
{
 $histnew = $mysqlB->real_escape_string(utf8_encode($line["HIST"]));
 $ID = $line["TableID"];
 $sql = "UPDATE table SET HIST = \"$histnew\" WHERE
TableID = $ID";
 $mysqlB->query($sql);
}
Depois de executá-lo, rodei o seguinte código no MySQL:
ALTER TABLE tbllancamentos MODIFY HIST TINYTEXT
E pronto, os acentos estavam corretos bastando apenas escolher o charset pelo MySQL no PHP...

Plugins do Firefox

Lista de Complementos que utilizo no Firefox
  • Firebug - Para programação HTML e teste de tempo;
  • Gmail Notifier - Para verificar se há novos e-mails;
  • PDF Download - Impede a abertura direta de arquivo PDF dando opção de abrir ou baixar (não está funcionando direito);
  • Print/Print Preview 0.6 - Altera botão de imprimir para um botão maior com opção de visualizar a impressão;
  • QuickPageZoom 1.6.2 - desativo opção de contexto - Fica na barra de Status, opção de Zoom por mouse, bom para usuários que não decoram o Ctrl + e -;
  • TabPopup 1.2.1 - Espécie de Aero Peek do Vista pro Firefox;
  • Tamper Data 10.1.0 - Consultar os headers HTTP;
  • TwitterFox 1.8.3 - Twitter na StatusBar com avisos de novos twitts;
  • Compact Menu 2 2.3.2 - Esconde a MenuBar e Cria um ícone que permite o seu acesso;

O que eu aprendi hoje...

PHP
  • Usando Unicode (UTF-8) a função strtoupper tem problemas com "ú", transforma em "ê", não sei porque.
  • Fix: utf8_encode(strtoupper(utf8_decode($str));
Python
  • É diferente o código do 3.1 pro 2.6, de preferência tente programar para o 2.6 que tem maior suporte e ajuda.
  • Rodar o PY2EXE criou uma pasta de 10Mb, com um EXE de 20kb...
  • Usando  Psyco no meu código, aumentou 200kb a pasta do EXE...
  • Fiz meu App pra executar programar direto do browser, talvez eu tente fazer em C. 
  • Usar Import Modulo sempre, nada de From Module Import X - porque;
jQuery
  • É muito simples, vou ver de rewrite all my Javascript com jQuery, vai reduzir bastante a complexidade do código.
  •  Não sei porque comprei o livro de tão simples que é, mas o livro me ajudou muito a entender...
HTML
  • Ancora # procura pelo ID, não precisa daquela tag A;
Meu App
  • Eu converti todo o processamento do meu App para UTF-8, até as páginas são UTF-8...
  • Deixei o código compilant com PHP 5.3.
  • Criei o gerenciador de arquivos.
  • Fazer lista do que fazer acelera a execução do projeto.

sábado, 19 de setembro de 2009

Projeto: Extreme File Compression

Esse projeto permite comprimir arquivos de qualquer tamanho para arquivos de menos de 1KiB.
Impossível? É claro que não, mas também não espere que a decompressão demore menos de uns 10 milênios...

Como?
Acredito que você saiba o que é um algoritimo de file hashing, simplificado é algo como tirar um resumo (hash) de um arquivo X, aquele arquivo X só pode ter aquele resumo W, mas um resumo W pode ser o resumo de vários arquivos X Y Z.
Então, podemos dizer que é possível reconstruir um arquivo X, simplesmente sabendo seu hash W.
É claro que esse processo pode demorar muito tempo, pois temos que rodar por brute-force (força bruta), todas as combinações possíveis, e corremos o risco de achar diversos falsos positivos.
Também armazenamos no arquivo comprimido, o tamanho do arquivo X, assim evitamos correr por todos os tamanhos possíveis de arquivos até chegar ao destino.
Como resolver então?
Tenho duas idéias de como resolver esse problema:
A - Executar o Hashing de todos os arquivos possíveis desde 0 até chegarmos ao arquivo desejado, contando quantas vezes o hash do arquivo foi repetido, a descompressão se daria da mesma forma, até encontrar o arquivo desejado. - O tempo da compressão neste caso é igual ao tempo da descompressão, muitos anos mesmo.
B - Usar vários algoritmos de hasing diferentes sobre o arquivo desejado, a fim de evitar a ocorrência de falsos positivos, assim, somente o arquivo X, teria os hashs A, B, C, D, E, F, G, H, I, J, K, L, M e assim por diante. - Neste caso o tempo de compressão pode demorar apenas 1 hora, dependendo da quantidade de hashs usados... Há apenas um pequeno risco de haverem falsos positivos, mas nesse caso depende da matemática pura e simples....
Exemplo
Aqui um exemplo do que é brute-force, vamos exemplificar que nosso arquivo em 5 digitos, e por serem digitos ele é composto apenas de número, vamos procurar o CRC32 a3bff1c0, então vamos:
  1. 00000 - 4adc54f5
  2. 00001 - 3ddb6463
  3. 00002 - a4d235d9
  4. 00003 - d3d5054f
  5. 00004 - 4db190ec
  6. 00005 - 3ab6a07a
  7. 00006 - a3bff1c0 - achamos o arquivo contém 00006
Viva!!! Descomprimimos o arquivo, sorte a nossa que ele era o 7º da fila....
Mas no mundo real pode ser na trilionésima tentativa, ou um número que nem sei escrever por extenso.
No exemplo acima o arquivo comprimido poderia ter esse conteúdo:
EFC-#-5-CRC32-a3bff1c0-1
Não parece muito eficiente né, mas imagine um DVD de 4.7GB, no arquivo a seguir:

EFC-bin-4700000000-CRC32-d113d346-7872298821547701824
53 bytes contra 4700000000 bytes, um arquivo de 88.679.245 de vezes menor.
Quem sabe um HD de 2TiB:

EFC-bin-2199023255552-CRC32-1afd250-27819858736306.....296621735144842438121298
Mesma coisa, cortei o último item que é o repetições senão o blog não ia exibir, mas faz de conta que o file ficou com 1KiB, um arquivo 2.147.483.648 de vezes menor!!!!

Conclusão
O meu algoritmo de compressão é extremamente eficiente, mas não é eficaz, pois o tempo necessário para a descompressão é exageradamente grande, talvez com a computação quantica ele se torne viável.
Uma última vantagem dele, é que ele pode ser rodado em paralelo sem qualquer perda de eficiência, cada CPU pode rodar um range de arquivos...

quinta-feira, 17 de setembro de 2009

Guia para pensar fora da caixa

Pegue uma serra, corte seu crânio, tire seu cerébro.
Pronto, se você sobreviveu, estará pensando fora da caixa.

Brincadeira, não faça isso, a sujeira vai ser enorme, o sangue espirrará para todos os lados e é dificil de limpar, além da dor na hora do corte, e dos problemas de remover o cerebro do crânio, pois os cabos não são compridos o bastante, e geralmente são do tamanho exato para ficar lá dentro...

Para pensar fora da caixa, primeiro você tem de aprender a ver o mundo como outra pessoa.
Se para você isso é fácil, aprenda também a esquecer quem você é, e tentar descobrir o que a pessoa alvo pensaria.
Se é dificil isso, imagine ser um animal, algum animal que você pode observar o comportamento, interaja com ele, faça ele de idiota, e veja suas reações.
Aprenda.
Ao conseguir pensar como outra pessoa, veja o seu problema, se você pensar como um cachorro, provavelmente o problema deixará de existir.... Um cachorro não tem idéia do aquecimento global, ele só se importa em enterrar seu osso, e brincar, fazendo isso ele é feliz, nem se lembra das vacinas e termometros...
Pense se o mundo fosse acabar em 60 segundos, o problema é importante?
Se for importante, como resolver ele de uma forma definitiva?
O que Chuck Norris faria? E o Jack Bauer?
Pense em soluções idiotas como, vamos organizar um suícidio de toda a raça humana para salvar o planeta, isso ajuda o cerébro a enfretar o problema por outros ângulos, encontrando soluções para qualquer problema inexistente.
Lembre-se que o problema só existe porque você está lá para dizer que ele existe...
A Terra seria apenas um monte de rocha coberta com material estranho se não estivessemos aqui para dizer que é um planeta com vida.

Propriedade Intelectual

O que fazer com a propriedade intelectual em um mundo em que a maioria dos jovens vêm ao mundo com a idéia de que a propriedade intelectual é inexistente?
Jovens copiam músicas, filmes, seriados, programas livremente na internet, isso é um problema para indústria, mas ela provavelmente encontrará uma solução para isso... Talvez remunerando-se por vias indiretas.
O problema mais importante está na concepção de que patentes são um mal ao mundo.
O processo movido contra o twitter por uma empresa que patenteou um modelo parecido para situações de emergências, ou a patente do Google de sua página inicial. Algumas pessoas veêm essas práticas com maus olhos.
Mas o que seria do mundo sem as patentes?
Se você acha que os inventores são movidos simples e apenas pela boa vontade de ajudar o mundo, lembre-se que eles precisam se sustentar, não podem viver de vento.
E se tiverem de trabalhar em outra coisa para se sustentar, não terão tempo livre o bastante para inventar.
De onde viria o dinheiro para remunerar os inventores, e também para incentivar as invenções? Do governo?
E o tempo que você gastou, os materiais gastos, na milhares de tentativas até chegar num produto que funciona?
Para ser inventor você teria de ser também filantropo, ou seja, quem não é filantropo não poderia inventar, ou seja, menos invenções no mundo, menos avanço...
Lembre-se que as patentes tem prazo de validade, o Gilete, aquela lamina de cortar a barba expirou alguns anos atrás. Porque você acha que as industrias farmaceuticas tem nomes compostos? Porque suas patentes estão vencendo, e como não conseguem encontrar novos medicamentos, têm de aumentar seu portifólio de medicamentos.
Assim, durante sua validade, o inventor tem direito a receber royalities por sua invenção, mas depois desse período a invenção passa a ser de domínio público.

É claro que algumas patentes parecem não fazer sentido, mas se os escritórios de patentes aceitarem, porque não patentear? Se você for esperto o bastante pode fazer um pé de meia sem qualquer esforço... E com esse pé de meia poderá ajudar quem quiser, sejam crianças da Africa, sejam os desabrigados de sua cidade.



Estou testando escrever sobre temas polêmicos para ver como os acessos do blog reagem...

quarta-feira, 16 de setembro de 2009

Projeto: Invisibilidade

Este é uma idéia de como poderia ser um sistema de invisibilidade, com funcionamento diferente daquele que tem um projetor em uma roupa, eis que aquele só funciona de um ângulo exato, o meu funciona em qualquer direção...

Montagem

A idéia é baseada naqueles abajour de fibra ótica, imagine que aquilo foi reduzido para, digamos, 1/10 de milimetro, e que a quantidade de filamentos seja de aproximadamente 20.000 filamentos de fibra ótica cobrindo uma área de 140º quadrados...
Embaixo desse dispositivo que vamos chamar de abajour, no lugar de uma lâmpada de uma única cor, teremos na ponta de cada filamento, um gerador de luz LED, que produzirá todas as cores disponíveis, com um nível de contraste altíssimo...
Além, do LED em cada ponta dos filamentos, teremos também nele um sensor de luz, que captará o retorno das fibras... E a ponta dos filamentos deve conter um filtro polarizador de luz, só permitindo a entrada de luz perpendicular à direção da fibra...
A montagem seria realizada sobre um material sólido ou flexível, claro que no caso do sólido é mais simples que no caso do flexível...
Seriam colocados lado a lado sobre o material, permitindo a ocorrência de sobreposição de filamentos, permitindo que no lugar de termos uma série de VVVVVV, tenhamos vários XXXXXX, aumentando assim a densidade por cm²...
Após seria despejado algum fluído que tornasse a posição dos filamentos fixa, tipo um silicone ou algo do tipo, para evitar que eles apontem para um lado diferente com o movimento...
No caso do material ser flexivel, cada abajour teria de ter uma espécie de GPS ativo, para saber sua exata localização em relação aos demais... No caso de usar um material sólido, as medições de posicionamento só seriam necessárias na fabricação....
É importante que todo o material seja da cor preta, e que caso seja iluminado com um fundo preto, não haja reflexos da luz... O material tem de funcionar como um buraco negro se não estiver ativo...
E o material tem de ser coberto como dupla face, assim, caso não haja um filamento distante oposto, usa-se o filamento próximo...

Funcionamento
O funcionamento do sistema é simples...
Cada filamento de fibra ótica recebe a luz perpendicular e transmite ao gerador do filamento que esta apontando na exata direção oposta da luz de entrada, ou seja, é como se a luz passasse direto pelo objeto, ou melhor dizendo é como se ele não estivesse lá...
É claro que se o material for flexivel, como uma capa, o sistema GPS teria de calcular qual filamento está na ponta oposta do outro, teria de ser um sistema bem eficiente e rápido...
A pior parte seria a rede necessária para transportar as informações de uma ponta a outra, só para ter uma idéia, se cada abajour medir 1mm, e isso é bem grande, para esconder um cubo de 1cm³, com uma gama de cores CMYK (32 bits), e uma taxa de quadro de apenas 15 fps, a rede de dados tranportaria algo em torno de 5.3 gigagabits por segundo (ou 686 megabytes/s)...
É claro que se o material for sólido, poderiamos em tese usar uma rede totalmente ótica, sem a presenta de geradores LED, mas isso demandaria um processo de montagem preciso, pois cada filamento deveria ser posicionado no ângulo oposto exato de sua outra ponta...
Mas voltando à rede de dados, os 5.3gbits são apenas para um cubo de 1cm³, para objetos maiores a quantidade de dados é bem maior, e com uma taxa de 30fps é o dobro ainda, lembrando que eu calculei um abajour de 1mm, que é de certa forma grande demais, e acabaria gerando uma imagem pixelada já que os 20.000 filamentos apontam cada um para uma direção diferente...
Em processamento nem ouso calcular, mas cada roteador ou seja lá o que for usado tem de ter sua própria CPU, se não o delay e a quantidade de dados vai para as alturas...

Falhas
Um dos problemas do projeto é a necessidade de gerar a luz LED, mesmo sendo uma opção econômica e pequena o bastante, a luz LED se tentar imitar uma fonte poderosa de luz como o sol ou refletores de luz, pode não ter força o suficiente, e acabar gerando uma sombra...
E mesmo que tivesse potência o bastante, o calor gerado acabaria por facilitar sua localização...
Também há o fato da energia, para alimentar tantas lampadas, seria necessário uma usina de energia...
Outro detalhe é o excesso de sinal de rádio nos casos dos modelos flexiveis, que exigiriam um sistema de GPS pessoal...

Estimativas
Acredito que com um abajour de 1/10 de milimetro, seja possível obter uma invisibilidade de 96% sob a luz solar, e 99% a noite, a uma distância de 30cm, mais que isso a pessoa ouve sua respiração...

Custo
O custo de uma capa de corpo inteiro, incluindo a arma, ficaria na faixa de uns 100 bilhões de doláres...

Uso
Isso é simples, em caso de situações com reféns, em missões de reconhecimento, espionagem, sabotagem entre outras coisas interessantes, :P...

Exemplo Gráfico
==== ( :P ) ========
Luz    Você Luz gerada

E este é meu projeto de invisibilidade, caso tenha interesse favor entrar em contato... :P - Quero meus royalities...

segunda-feira, 14 de setembro de 2009

Banco App

Bem que os bancos podiam liberar um acesso via XML aos extratos, todos de preferência num formato padronizado, fazendo isso, e permitindo que o app baixe os extratos automaticamente, permitiriam diversos serviços, como controle unificado das contas correntes, sem a necessidade do usuário entrar em cada um dos sistemas diariamente, baixar o arquivo e importar no sistema...
Isso é muito chato, dificuldando o ingresso de aplicações desse tipo no mercado, pois exige que o usuário tenha interesse ativo no uso do sistema.
Acredito que um dos fatores para que os bancos não façam isso seja a segurança, mas bastaria criar uma senha exclusiva para o sistema, e pronto, sem poderes para transações...
Um recurso futuro interessante seria o sistema enviar para o banco as transações, e o usuário acessando o internet banking confirmar as operações a serem realizadas.

Guia de Sobrevivência na Internet

Segue uma lista de regras a serem seguidas para garantir sua sobrevivência no mundo virtual sem maiores arrependimentos:
  • Não se deixe fotografar em situações constrangedoras;
  • Não tenha (ini)amigos;
  • Não se deixe filmar fazendo algo que você quer manter em segredo;
  • Não se deixe filmar fazendo algo ilegal;
  • Não envie fotos suas pelado;
  • Não tente defender seu ponto de vista em fórums(ns), ou melhor, em lugar nenhum;
  • Não seja medroso, enfrente seus inimigos, mas não agrida os demais, eles podem criar perfis malignos;
  • Não responda as perguntas para lembrar senha com as respostas verdadeiras, use códigos tipo cachorro = marido, mãe = sogra;
  • A internet lembra de tudo, evite escrever de forma gramaticamente incorreta, comer letras uma vez ou outra é normal, sempre parece estupidez ou burrice;
  • Não fale mal de nínguem, se você não gosta da pessoa, continue não gostando mentalmente;
  • Não ache que você tem de falar toda vez que alguém fala algo, o silêncio é muito mais poderoso que uma resposta idiota;
  • Se porque você está certo, e eles errados, não significa que tem de convertê-los ao lado certo da força;
  • Não acredite que você está sendo traído, ganhou na loteria, está na malha fina, é investidado pela Policia Federal, ou qualquer coisa, pense antes de fazer qualquer coisa, se bem que tem gente que cai em golpe desse tipo ao vivo também, pense, pense denovo, tem certeza que pensou?;
  • Não poste fotos na internet sem olhar atentamente aos detalhes dela, vide o site perolasdookut;
  • Não poste videos idiotas, a não ser que você queira criar um viral;
  • Não poste fotos com caretas, elas podem ficar famosas;
  • Não crie um blog idiota (ops);
  • Não fale besteira, alguma empresa que você pretende contratar pode pesquisar seu passado, e seu passado lhe condena!!!;
  • Aprendar a variar de login, logins iguais podem ser rastreados, e você pode aparecer como inscrito em sites constrangedores, dependendo de quem pesquisou;
  • Não confie senha a amigos/namorados/maridos, qualquer problema e tu tá no buraco (pra não dizer f*);
  • Instale um antivirus, firewall, e tudo mais;
  • Saiba o que é um antivirus, firewall, spyware, e como funcionam...
  • Não tenha inimigos, ex-mulheres, ex-namoradas, traidas principalmente são os piores;
E aqui termina a lista, acho que deve ter mais coisas mas não lembro agora...

sábado, 5 de setembro de 2009

DRM - Venda de Usados

Qual a diferença na venda de um filme digital por uma loja, e um filme digital usado?
Nenhum, praticamente seria possível vendê-lo ao preço da loja, e isso é um problema para as lojas...
Por isso que eles não permitem a venda dos direitos digitais, mas isso acaba atrapalhando as vendas, se um DVD eu posso vender depois, porque comprar um filme que vou morrer com ele?
E seria possível penhorar os direitos sobre esses filmes?
Pode parecer pouco, mas e se a pessoa tiver uma coleção com valor de digamos R$ 10.000,00, é um valor considerável que poderia sim ser penhorado, o melhor seria comprar por 60% do valor na praça judicial...

quinta-feira, 3 de setembro de 2009

Astronômia - Ciência Interessante

Você sabia que a maior parte do conhecimento sobre outras estrelas e constelações é simplesmente baseada em modelos matemáticos?
É incrível como eles conseguem imaginar como algo deve ser, com apenas algumas fotos em vários comprimentos de onda...
Nem as cores do hubble são verdadeiras, cada cor significa um elemento químico, e não as cores reais.....
Incrível!!!!
Eles conseguem ver um ponto piscando e imaginar uma estrela totalmente estranha... Os pulsares...
Veêm objetos se movendo rápido demais e veêm um buraco negro....
Pior que tudo faz sentido, logo devem estar certos, ou não, e o universo é mais estranho ainda, ou mais simples...
Estou cansando de escrever com três pontos...
aeuhaeuea
O pior é saber que talvez tenha milhares de terras por ai, mas como nossa tecnologia é pouco avançada ainda, não consigamos vê-las, e talvez eles também estejam com esse mesmo problema...
Vai ver moramos na área nobre do universo, e hajam favelas galáticas....

Positronic Brain Project

Warning: I'm don't know if someone already had this idea, i couldn't find it on google, maybe i fail to find the right keywords for this.
Studying the anatomy of a neuron you can realize that, it's just a cell that receives signals throught its many dendrites, receiving each from another neuron, and the neuron outputs signals throught its axon, that may lead to many others neurons... But it may be reversed in some cases, but overall it's that...
Then, we have some rules, a neuron only retransmit a signal received when it reaches some pre-assigned level of power, and the output is always the same... And it has to wait a few time to transmit again...
So it's relatively simple the operation of one... Not really, but let's believe that it is.... :P

The positronic brain will not have any positron as it could result in a dangerous thing, as positron + eletron aniquilate each other...
The idea is to build something like an transistor, but shaped like a neuron, with a small processing center, with a few single rules programmed, and a lot of input and output cables covered with carbon nanotubes, or something smaller....
Each cable would be randomly connected to another, let's call it neuronit (neuron + bit) or neuronites...
The size of a neuronite really matters, as the smaller it is, the more fits in a small space, like a head...
The size of cables may vary a lot, but each neuronite needs at least a thousand of those, as some may just fail to find a connection.... The end of the cable need to be magnetic, to connect automaticly to the axon that is a cable that it's not fully shielded with carbon nanotubes...

After building a bunch of neuronites, you just drop them over an recipient, and drop some kind of eletrical shielded fluid, and them start it...
Starting teaching....
This kind of assembly process assures that your positronic brain is unique, as you can't tell which connections had success, and which hadn't....
The only failure in this project is that not every brain will work properly as it can have lesser connections resulting in lower IQ...
My calculations says that it will take at least 25 years to build an operational model, as well to develop the technology that will allow the build of neuronites small enough to build self-aware robots... I'm just not sure about energy consumption, as it would require a small nuclear reactor, but it will not care in the future as it we find out how to generate energy like plants do, carbonic dioxid is free in the air....

quarta-feira, 2 de setembro de 2009

Carnê Leão e DPI

Estou vendo a possibilidade de alterar o código fonte do Carnê Leão da Receita Federal para que o programa se torne DPI Aware, assim ele poderia ficar grande mesmo em telas pequenas...
O jar é unpackable, mas o source se for o source, é case sensitive, preciso de um linux box pra descompactar o jar....
Só espero que seja possível, ainda preciso aprender a sintaxe do Java.
Ou a Receita poderia corrigir esse problema... Se não, eu lanço aqui a versão DPI Aware, e o guia para fazer você mesmo, para evitar malwares....

Currículo

Bom, já faz mais de uma semana que pedi demissão do meu atual emprego de advogado. Ainda estou preparando meu currículo para enviar por aí, mas minha dúvida é o que colocar nele.
Eu não estou muito a fim de continuar na carreira de advogado, a burocracia é exagerada, e nada anda...
Apesar de eu ser praticamente expert em fazer inventários, fazer cálculos... O problema é que é sempre a mesma coisa...
Minha dúvida é como avaliar e colocar nele meu nível de inglês, eu fiz somando os períodos 2 anos de inglês em escolas de inglês mais uma aula por semana desde a 1ª série, mas 90% do meu conhecimento vem da internet, leitura, ou seja, aprendi sozinho, não sei o que querem dizer com inglês avançado, talvez seja algo além do que eu sei, minha gramática em inglês deve ser horrível, mas eu leio qualquer texto, assisto séries em inglês, apesar da baixa eficiência no listening (80%)...
E meu nível de informática??? Windows Avançado??? PHP, Python, VisualBasic, mIRC Script, Lógica???, HTML...
Ainda não sei exatamente o que colocar nele, acho que vou deixar tudo intermediário, e personalizar o currículo por empresa, dependendo do que ela pode exigir...
Estou pensando em ir para a área da administração, econômia, informática, vendas, sei não ainda...
Outra dúvida é se devo ocultar minha graduação para não cair no jurídico.

terça-feira, 1 de setembro de 2009

Loja Online e Frete

Não sei porque tem lojas online, que para ver o valor do frete exigem que você tenha cadastro nela, é a pior coisa a ser fazer com o usuário final...
Estou apenas pesquisando o preço, mas para saber o valor do frete eu tenho de preencher o formulário kilometrico deles...

Como se ter o cliente cadastrado fosse força-lo a realizar a comprar. Isso acaba afastando potenciais compradores que não tem a mínima idéia do valor do frete, e tem preguiça de realizar mais um cadastro que causarão um enxurrada de e-mails indesejados...

Só porque o cliente deu o e-mail para o seu site, não siginifica que este endereço não vá ser usado por spammers, eles podem muito bem usar falhas de segurança no seu site, ou serem do staff do hosting, e pegarem a lista...