You are currently browsing the category archive for the '6pm' category.

Quando me decidi a preparar um ‘build server’ para ter integração contínua no projecto, comecei a procurar na wikipedia pelos possíveis build servers existentes. Apesar de já ter trabalhado com o ‘Cruise Control’ na medialog, dado o pouco tempo (horas!) que tinha para preparar tudo, decidi-me pelo TeamCity da genial empresa JetBrains, também responsáveis pelo resharper.

buildserver

No final, se tivesse de configurar os scripts nAnt para ter o servidor a compilar, testar e criar as releases dos vários componentes, teria perdido uns bons dias. Com o TeamCity, e inicialmente usando os ficheiros .sol do Visual Studio para criar os builds, foi tudo feito numa tarde*…

Altamente recomendado.

*Claro que assim que quis adicionar umas funcionalidades ‘especiais de corrida’, tive de fazer um build script de raiz. Mas mesmo assim…

Para o projecto em que estou envolvido desde Janeiro, desde cedo fiz questão que fossem usados muitos processos relacionados com o desenvolvimento para, no final, facilitar o processo de manutenção.

No top 3 destes processos estão, sem qualquer sombra de dúvida:

  • Uso de source control (SVN)
  • Integração contínua
  • Log4net

Desde que usei o log4net na Inosat que acho que é uma ferramenta indispensável para a grande maioria* dos programadores. Desde que a aplicação foi instalada nos servidores que, invariavelmente, todos os problemas podem ser identificados usando os logs para verificar o que se passou.

Read the rest of this entry »

Pode parecer incrível mas… isto é exactamente o que acontece na empresa em que estou agora a fazer consultadoria… :(

(link: http://thedailywtf.com/Articles/Slaves-to-The-Process.aspx)

 Matthew Sant

that makes this cat look like Matthew Sant!

Ultimamente tenho trabalhado com vários EDMS e, vendo o tipo de produto que é oferecido, penso sempre que a malta da empresa de cascais podia estar a ganhar muitos mais mercados (sim, vocês da empresa que começa por M, acaba por g, e no meio tem a palavra ‘edialo’)…

É que, e interrompam-me quando vos convencer, o produto que vocês oferecem, com auditoria, workflow, versões, etc, não fica em nada atrás do que há no mercado… infelizmente, o vosso é apenas direccionado a um pequeno público alvo (publicidade) quando, e aproveitando o excelente sistema de plugins existente, podiam ter outros mercados.

Obviamente não penso que seria proveitoso criar uma aplicação totalmente genérica como tantas outras existentes mas, e aproveitando o vosso conhecimento, criar outras para gerir novos mercados.

Imaginem as possibilidades. PTLog. SonaeLog. O mundo!..

o futuro?

Dinheiro e fama esperam-vos. Mas, pelo menos, depois mandem-me um postal das Caraíbas.

Esta semana tenho uma pausa do projecto em que estou na British Telecom para poder ajudar uma outra equipa da empresa a fechar um produto em Northampton. Assim fiquei com a responsabilidade de criar um validador de moradas lidas por um OCR.

O interessante deste processo é que, para além das moradas lidas poderem estar mal pelo motor de OCR não conseguir retirar os caracteres correctos da imagem digitalizada, temos de lidar com o problema da intervenção humana..

O endereço pode ser, por exemplo: “Flat 5, St. Mary Street, Bayswater, London, CV32 4DS”, ao que as pessoas podem apenas colocar “Flat 5, CV32 4DS”. Este endereço é, para todos os efeitos, correcto, pois identifica únicamente uma morada… porém, por se tratar de correspondencia com informações sensíveis, o cliente quer que estas moradas sejam traduzidas para a sua forma ‘normal’. Quando a este problema adicionamos o facto do motor OCR poder ler a morada como, por exemplo, “Flat S CU32 AD5″… torna tudo muito mais complicado.

scantxt

Assim criei um pequeno projecto que, fazendo uso de um webservice que retira possíveis resultados da base de dados do Royal Mail, tenta retirar a morada correcta, fazendo uso dos conhecidos problemas de OCR (A->4, 9->G, O->0, …).

Como temos de garantir uma fiabilidade do sistema acima dos 85%, daqui a uns dias já consigo dizer se isto correu bem.. Mas para já, isto é providenciado sem qualquer tido de garantia. Para verem como usar… corram os testes unitários.

Podem fazer download aqui aqui (gravar como e depois alterem de pdf para zip).

Nos últimos 6 meses tenho trabalhado num portal web para geração e venda de seguros.

Estando a escassas horas de entregar a ultima release, tive de andar nos últimos dias a fazer testes de performance sobre o servidor, para que o cliente finalmente assine (e pague) à empresa que contratou a empresa que me contratou :)

Felizmente, assim que soube do JMeter, o meu trabalho ficou muito mais simples. Este software exercita a nossa aplicação simulando os pedidos de um browser, em que podemos configurar o número de utilizadores concorrentes, o número de vezes por minutos que eles fazem um pedido, etc. Esta configuração, assustadora ao ínicio, torna-se extremamente simples assim que, ao pesquisarmos um pouco a documentação, ficamos a saber que podemos incluir um servidor proxy enquanto fazemos um pedido manualmente, ficando tudo registado para podermos automatizar o processo.

Isto, quando cada pedido ao servidor é constituido por mais de 1000 parâmetros POST/GET (yep, graças à ‘maravilhosa’ plataforma desenvolvida in-house que eles usam aqui), torna-se algo essencial.

Além de se poder usar isto para gerar stress sobre o servidor, também podemos usar para correr testes de regressão sobre a aplicação.

Altamente recomendado.

Trabalhar ao fim de semana é chato..

calendario.png

Trabalhar vários seguidos já é demais :S

View João Caxaria's profile on LinkedIn