segunda-feira, 31 de março de 2008

Dicas de delphi - Parte I

Começando uma série de dicas rápidas de delphi, aqueles códigos que você sempre precisa mas nunca lembra. Se quiser alguma coisa, dá um toque que eu posto. Vou tentar colocar dicas que eu mesmo desenvolvi, mas se eu não conseguir, o google me ajuda. ;).

Fazendo download de arquivos:

Declare no uses a unit UrlMon.

procedure TForm5.Download(AFileSource, AFileDestiny: String);
begin
URLDownloadToFile(nil, PChar(AFileSource), PChar(AFileDestiny), 0, nil);
end;

Beleza, chame essa procedure passando a url do arquivo (AFileSource) e onde será salvo (AFileDestiny).

T+

sexta-feira, 28 de março de 2008

Ferramenta para atualização de banco de dados

Tive uma idéia brilhante ontem (que com certeza não é minha).

Quando precisamos atualizar um banco de dados muito grande, passamos por um problema: tempo. Rodamos um update e esperamos uma vida pra obter resposta. Fora quando o banco não cai, ou tinha problema e corrompe, etc. Os ossos quebrados do ofício.

Mas será que é possível atualizar de poucos em poucos registros, aumentando assim a velocidade e diminuindo o perigo de inconsistência?

Há algum tempo atrás desenvolvi uma classe de pool de thread (p.s: thread é um processo do programa que roda em paralelo com ele. Pool de thread é um conjunto de threads) que permite que eu passe um procedimento e ela cria uma série de threads, dividindo a tarefa, e executando mais rápido.

Essa classe foi pensada pra ser utilizada com relatórios muito pesados, e faria o seguinte: numa das threads retorna os registros, por exemplo, de 1 a 100. Em outra thread, do 101 a 200. E assim por diante. No final, todos os registros seriam juntados na máquina do usuário e o relatório seria montado.

Acredite, é muito mais rápido para o banco executar pequenos selects ou updates do que um monstro de uma vez.

Mas queria algumas idéias, de como começar, ou se é útil. Além disso, outras aplicações para o pool de threads.

Não vou postar aqui o código, mas quem quiser, só me dá um toque que eu mando.

E se tiver alguma correção, ai é legal postar aqui.

Até

Até onde vão suas idéias?

Hoje tá boa a coisa aqui.. hehehe

Muitas vezes temos idéias que julgamos maravilhosas, que mudariam o mundo, mas que no fim das contas nunca saem do papel. Seja por falta de apoio, seja por boicote ou qualquer outro motivo, uma idéia que se posta em prática poderia trazer muitos benefícios acaba sufocada.

Mas, sinceramente, até onde você iria com sua idéia? Você teria coragem de aguentar as consequências que ela pode trazer?

Se a resposta para essa pergunta for não, então sua idéia não é tão maravilhosa assim. Mas, se não é, pode ficar!

Precisamos expressar aquelas idéias mirabolantes, porque as vezes você consegue adesão de algumas pessoas e as coisas ficam mais fáceis. Então, quando você percebe, o que era uma idéia passou a ser praticado por outras pessoas e está sendo cada vez mais aprimorada.

Até onde vão nossas idéias e até onde estamos dispostos a ir?
Às vezes, a solução para um problema horrível está nas nossas mãos e nem sabemos porque temos medo.

Até a próxima

Fim do mundo

Olá de novo (hoje estou inspirado, aliás, ontem tive várias ideias.. hehehe)

Conversando com o pessoal que estuda comigo, é muito interessante ouvir a opinião que eles tem sobre o mundo e sobre o destino da humanidade.

Geralmente, a visão é uma catástrofe. A maioria está totalmente descrente na humanidade e nas ações do homem. Mas por quê? A tecnologia avança a passos largos, a medicina daqui a pouco será até mesmo capaz de ressucitar os mortos, as pessoas estão mais "próximas". O que está errado?

A visão geral é: somos parasitas. Consumimos os recursos das coisas que estão próximas até a sua total extinção.

Mesmo com toda essa balbúrdia na preservação do ambiente, efeito estufa, aquecimento global, continuamos comprando mais carros. A venda de carros aumentou horrores nos últimos anos. Continuamos presos a velhas premissas mesmo sabendo que isso está na verdade acabando com o todo. O que importa, afinal, é o conforto..

C#r#l#o, por que ao invés de comprar mais carros não cobramos melhores meios de transporte? Além de mais econômicos, diminuem os congestionamentos, a poluição, propicia a interação entre as pessoas, até pra ler um bom livro.

E não só com os carros. Isso foi só para exemplificar. As nossas "más" ações está por toda parte, desde maltratar algum subordinado até aceitar propinas para realizar um trabalho.

Enquanto continuarmos presos às nossas velhas premissas, tendemos a continuar parasitas e não pensar no que está acontecendo. Tudo interage entre si, mas não conseguimos enxergar. Isso é um problema de quem? Nosso?

Não. E sim. Acredito piamente na influência da sociedade sobre as nossas opiniões. Mas acredito também sobre o poder que temos de nos questionar e refletir sobre o que acontece.

Enquanto formos incapaz de pensar, estaremos condenando o mundo ao nosso redor.

A cena que prevejo para o futuro é a mesma que termina o filme "O Exterminador do Futuro 3".
O filme termina com um vírus de computador tomando conta de todos os computadores do mundo (inclusive os militares) e disparando as ogivas nucleares que os países deixam bem escondidinhas nas "áreas 51" da vida.

Até a próxima.

Automação ou alienação?

Estes dias estive pensando: uma empresa que desenvolve um sistema (como a empresa em que trabalho, a Softland) recebe uma série de pedidos de melhorias de funcionalidades e facilidades, para permitir um trabalho mais ágil.

Mas será que o que estamos fazendo é mesmo deixar o trabalho mais ágil ou estamos simplesmente alienando o trabalho do usuário?

Quantas requisições absurdas já recebemos que falavam quase para o sistemas "tocar" a empresa sozinha.. rs...

Quando uma empresa possui um sistema, os funcionários geralmente não querem saber como as coisas são feitas porque o sistema faz "sozinho". Se dá algum problema, a culpa é sempre do sistema. Mas como a culpa pode ser sempre do sistema?

Concordo que o software possui bugs. Óbvio, foi feito por um ser humano, e se um ser humano está sujeito ao erro, o software também está. Mas o sistema não funciona sem a entrada de dados. Dizer que o sistema "errou o processo" é como dizer que uma arma de fogo é capaz de matar as pessoas. Lembro até de uma cena de um desenho animado onde o protagonista (um agente do fbi se não me engano) coloca uma arma na mesa e diz: "Vamos arma, mate! Vamos lá, mate!". Sem reação da arma (obviamente) ele fecha dizendo: "Guns don't kill people. People kill people" (Armas não matam pessoas. Pessoas matam pessoas).

Não sou contra o desenvolvimento de recursos que facilitam a vida do usuário. Ao contrário, eles devem existir. Se o computador é capaz de acelerar tarefas cotidianas, por que não utilizar esse potencial?

Sou totalmente contra o uso alienado de qualquer ferramenta.

Conhecer no minimo como as coisas acontecem, além de melhorar os processos também enriquece a sua experiência profissional e pessoal, porque aprendemos a pensar melhor nas relações que existem entre cada acontecimento.

Fico por aqui com um desabafo contra o descaso e alienação aos quais nós mesmos nos submetemos.

Até

quinta-feira, 27 de março de 2008

Corrupção em bancos firebird

Nossa, segunda em duas semanas!

Dois clientes com problema de banco na mesma coisa. Duplicação de chave primária!

Por algum motivo o banco parece que grava transações do limbo no banco, ferrando tudo!

Perguntei para especialistas e a mesma resposta: o banco possuía algum tipo de corrupção. Wow! Ajudou bastante.

É, acho que está na hora de repensar a estrutura do sistema pra acabar com esses problemas, porque de tempos em tempos os bancos começam a pipocar, hehehe.

Até

quarta-feira, 26 de março de 2008

Estreando

Nossa, nunca pensei que fosse fazer um blog!
Antes eu achava que isso era uma perda de tempo total mas, como muitas coisas, a gente aprende que pode ser útil!
Quem faz a ferramenta é o usuário. Você pode usar um grampeador pra matar alguém! hehehe

Bem, aqui vou tentar colocar as coisas que acontecem comigo, pessoalmente e profissionalmente, porque ninguém é totalmente profissional nem totalmente pessoal. A gente passa boa parte no trabalho pra desconsiderar esse tempo, mas ficar no trabalho o tempo todo mata!!!

Tenho muita coisa pra falar: música, programação, tecnologia, psicologia, filosofia, etc...

Sintam-se à vontade para postar opiniões, requisições, etc, etc, etc.

Até a próxima!