php summer school 2009

5 August 2009 – 09:52

A semana passada acabou o PHP summer schol 2009, onde tive o prazer de estar presente como formador.

Em particular coube-me os módulos relacionados com desenvolvimento orientado à performance, segurança e Preparação de Certificações.

Os meus parabéns para a DRI e para a Caixa Mágica pela organização.

Para os formandos o meu obrigado pela presença e por me terem “aturado” durante os 3 dias, espero que tenha sido tão interessante assistir a formação como foi para mim dá-la.

Zend Server CE no Fedora 11

6 July 2009 – 17:25

Se tentarem instalar o zend-ce no Fedora 11 é provável que tenham problemas de dependências.

Nota: para os impacientes, na parte de baixo deste post estão rpms pré-compilados.

# yum install zend-ce
[...]
php-pdo-mysql-zend-ce-5.2.9-20.i386 from Zend has depsolving problems
–> Missing Dependency: libmysqlclient.so.15(libmysqlclient_15) is needed by package php-pdo-mysql-zend-ce-5.2.9-20.i386 (Zend)
php-mysql-zend-ce-5.2.9-20.i386 from Zend has depsolving problems
–> Missing Dependency: libmysqlclient.so.15 is needed by package php-mysql-zend-ce-5.2.9-20.i386 (Zend)
php-mysqli-zend-ce-5.2.9-20.i386 from Zend has depsolving problems
–> Missing Dependency: libmysqlclient.so.15 is needed by package php-mysqli-zend-ce-5.2.9-20.i386 (Zend)
php-mysql-zend-ce-5.2.9-20.i386 from Zend has depsolving problems
–> Missing Dependency: libmysqlclient.so.15(libmysqlclient_15) is needed by package php-mysql-zend-ce-5.2.9-20.i386 (Zend)
php-pdo-mysql-zend-ce-5.2.9-20.i386 from Zend has depsolving problems
–> Missing Dependency: libmysqlclient.so.15 is needed by package php-pdo-mysql-zend-ce-5.2.9-20.i386 (Zend)
php-mysqli-zend-ce-5.2.9-20.i386 from Zend has depsolving problems
–> Missing Dependency: libmysqlclient.so.15(libmysqlclient_15) is needed by package php-mysqli-zend-ce-5.2.9-20.i386 (Zend)
Error: Missing Dependency: libmysqlclient.so.15 is needed by package php-mysql-zend-ce-5.2.9-20.i386 (Zend)
Error: Missing Dependency: libmysqlclient.so.15(libmysqlclient_15) is needed by package php-pdo-mysql-zend-ce-5.2.9-20.i386 (Zend)
Error: Missing Dependency: libmysqlclient.so.15 is needed by package php-mysqli-zend-ce-5.2.9-20.i386 (Zend)
Error: Missing Dependency: libmysqlclient.so.15(libmysqlclient_15) is needed by package php-mysql-zend-ce-5.2.9-20.i386 (Zend)
Error: Missing Dependency: libmysqlclient.so.15 is needed by package php-pdo-mysql-zend-ce-5.2.9-20.i386 (Zend)
Error: Missing Dependency: libmysqlclient.so.15(libmysqlclient_15) is needed by package php-mysqli-zend-ce-5.2.9-20.i386 (Zend)

O Fedora 11 traz o libmysqlclient16, e o Zend CE está compilado com o libmysqlclient15 e sendo assim nada feito.

Depois de uma pequena procura, e já que o libmyslclinet15 que encontrei também tinha problemas de dependências, nada mais me resta do que compilar o meu.

Para tal, um bocadinho de plágio, fazendo o download do SRPM libmysqclient15 do remi para Fedora 10

Depois é só instalar:

Fazer download de:

http://rpms.famillecollet.com/SRPMS/mysqlclient15-5.0.67-1.fc10.remi.src.rpm

Instalar:

rpm -Uvh mysqlclient15-5.0.67-1.fc10.remi.src.rpm

No meu caso, decidi adicionar umas “macros” para personalizar a compilação, para isso editei o ficheiro “~/.rpmmacro” e coloquei:

%dist .fc11.rmelo
%packager Ricardo Melo <_o_@meu.email>
%vendor Ricardo Melo <_o_@meu.email>

Depois é só executar
rpmbuild -ba ~/rpmbuild/SPECS/mysqlclient15-remi.spec
e esperar ….

No fim, se tudo correu bem, e tinham as dependências todas para compilar, então deverão ter um ficheiro
~/rpmbuild/RPMS/i386/mysqlclient15-devel-5.0.67-1.fc11.rmelo.i386.rpm
e no meu caso, se fizerem
rpm -qip ~/rpmbuild/RPMS/i386/mysqlclient15-devel-5.0.67-1.fc11.rmelo.i386.rpm
aparece:

rpm -qip ~/rpmbuild/RPMS/i386/mysqlclient15-5.0.67-1.fc11.rmelo.i386.rpm
Name : mysqlclient15 Relocations: (not relocatable)
Version : 5.0.67 Vendor: Ricardo Melo
Release : 1.fc11.rmelo Build Date: Mon 06 Jul 2009 05:54:48 PM WEST
Install Date: (not installed) Build Host: localhost
Group : Applications/Databases Source RPM: mysqlclient15-5.0.67-1.fc11.rmelo.src.rpm
Size : 4774854 License: GPL
Signature : (none)
Packager : Ricardo Melo
URL : http://www.mysql.com
Summary : Backlevel MySQL shared libraries.
Description :
This package contains backlevel versions of the MySQL client libraries
for use with applications linked against them. These shared libraries
were created using MySQL 5.0.67.

Depois é instalar

# rpm -Uvh ~/rpmbuild/RPMS/i386/mysqlclient15-5.0.67-1.fc11.rmelo.i386.rpm
Preparing... ########################################### [100%]
1:mysqlclient15 ########################################### [100%]

Depois disto já podemos fazer:
# yum install zend-ce
e esperar um bocado até que se faço o download e instalação de todos os pacotes para no fim termos o Zend Server Community Edition a trabalhar.

Claro, que, para os impacientes, aqui ficam os ficheiros compilei, para um download e instalação rápido:

RPM: mysqlclient15-5.0.67-1.fc11.rmelo.i386.rpm

RPM com os ficheiros de desenvolvimento: mysqlclient15-devel-5.0.67-1.fc11.rmelo.i386.rpm

PHP Summer School está a chegar

30 June 2009 – 09:22

É verdade, o PHP Summer School está a chegar outra vez, já podem fazer a pré-inscrição usando o site www.phpsummerschool.org.

Este ano, irá decorrer entre os dias 21 e 29 de Julho e… adivinhem… vão ter o prazer (ou azar :-P ) de me aturar já que estou “indigitado” para ir leccionar parte dos módulos.

Sendo assim, inscrevam-se e … vemos-nos lá!

PS: Também vamos ter o PHP Summer School Advanced Topics la mais para Setembro, mais voltado para os “veteranos” do PHP.

Suporte de https no Zend Server CE

29 June 2009 – 11:51

Aparentemente, o Zend Server Community Edition não tem suporte de “ssl” no modulo de curl pré-compilado. Pelo menos para Linux.

Tinha por aqui um aqui um equipamento com Centos e o Zend CE instalado e estava a ter problemas com o mesmo, depois de ter olhado para os erros, o problemas estava no facto de que o curl não tinha sido compilado com suporte de ssl. No entanto é bastante fácil de activar o suporte (no entanto exige que se recompile o software).

Para este equipamento ( Centos 5.3 ) bastou fazer:

* Instalar o ficheiros de fontes do zend ce
yum install php-source-zend-ce
* No meu caso tive de instalar estas dependências:
yum install curl-devel gcc
* Se querem guardo o modulo (original) que vem com o pacote rpm:
cp /usr/local/zend/lib/php_extensions/curl.so /usr/local/zend/lib/php_extensions/curl_rpm.so
* compilar e instalar
cd /usr/local/zend/share/php-source/ext/curl
/usr/local/zend/bin/phpize
./configure --with-php-config=/usr/local/zend/bin/php-config
make
make install

* e por fim reinicar o apache
service httpd restart

Feito, o curl a funcionar com suporte de ssl.

Referências: Bug na Zend, compilar extensões para Zend Server

O ultimo (quase) ano em perspectiva

29 June 2009 – 11:37

Caros,
Quase um ano depois do ultimo post, volto a carga, com mais umas barbaridades.

O que se passou neste tempo? Uma quantidade de coisas, mas chamo a atenção para algumas em particular, nomeadamente:

* O evento CRM 2009, decorreu mais uma vez de uma forma praticamente perfeita ( tirando o raio do som do auditório com o raio do feedback)
* Um “crash course” sobre porting de aplicações de ambientes M$ para Wine em Linux (incluindo debug dos acessos a dispositivos USB, debug e reverse engineering de aplicações e desenvolvimentos para Wine)
* O Site www.energiapositiva.pt, foi um projecto extremamente interessante, especialmente pela dimensão da promoção ao mesmo por parte da GALP.
* O PHP Summer School onde estive como formador, dando as unidades relativas a preparação da certificação ZCE

Bem, olhando para trás acho que esses são provavelmente os pontos mais “destacáveis”, sendo que o resto foi “business as usual”, com os habituais projectos de sistemas de maior ou menor dimensão e/ou desenvolvimentos aplicacionais.

Um pouco longe da tecnologia, não posso deixar de referir, o acontecimento do ano. A noticia que vou ter uma filhota (e já não falta muito para nascer) :-) .

bem … de uma forma rápida, este foi o fio condutor (ou não) entre o último post e agora, agora é so tentar faze-lo com mais frequência.

Linux nas escolas, ou seja LPI nas escolas

3 July 2008 – 10:13

Dia 2 de Julho, foi assinado um acordo de cooperação entre o Linux Professional Institute (LPI) e o ministério da educação, cujo o intuito é introduzir a nível das academias de TIC a formação/Certificação a nível de Linux.

Este acordo não foi assinado apenas por nós, foi assinado, segundo os media, por: Apple, Cisco, Linux, Microsoft, Oracle e Sun…. Pera ai, alto lá… Somos grandes mas ainda não somos “O Linux” (apesar de estarmos a tentar chegar lá … hehehe) deve-se ler neste casos o Linux Professional Institute, representado pela DRI

Se quiserem as versões mais “oficiais” da noticia, vejam em:

Video do acontecicmento (RTP)

Noticia no Publico

Apresentações do Evento CRM 2008

30 May 2008 – 10:34

Para quem lhe interesse, as apresentações do evento crm 2008 estão disponíveis no blog do evento crm, ou se quiserem, o link directo é: http://eventocrm.blogs.dri.pt/2008/05/27/apresentacoes-evento-sugarcrm-2008

Evento CRM 2008

16 May 2008 – 11:22

No rescaldo do evento CRM 2008, organizado pela DRI e pela própria SugarCRM venho dar os parabéns a todos os que se envolveram na organização deste evento pela forma espectacular como tudo correu.

Nomeadamente o meu colega Francisco Ryder, o qual levou sobre os seus ombros a responsabilidade “final” da organização.

Agradeço ainda a todos os oradores, pelo contributo inestimável pela promoção do CRM e das “Melhores Práticas” do CRM.

Para quem não pode assistir ao mesmo, apresento desde já os meus “pêsames” já que perderam uma excelente conferencia, não sobre SugarCRM mas sim sobre CRM (Customer relationship management) ou seja Gestão do relacionamento com o cliente, o que é, como se faz, quais os erros do passado e qual a direcção para onde seguir.

Deixo agora algumas ideias soltas sobre o que vi e ouvi

O CRM não é Tecnologia, de facto o CRM não é tecnologia, é tudo sobre clientes e a relação da empresa com eles, a tecnologia está la para ajudar, não para atrapalhar. Há muita gente que quer um CRM porque é bonito, mas a essas pessoas digo que estão completamente erradas, o CRM não é uma peça de arte, é uma forma efectiva, adaptada a forma como a empresa funciona, centrada nos clientes, de AJUDAR a gerir esse mesmo relacionamento com os clientes.

Os clientes são o activo mais importante de uma empresa pois sem eles, a empresa pura e simplesmente não existe. Sendo assim a empresa deve-se centrar nos seus clientes tentando sempre prestar o melhor serviço, indo de encontro as necessidades dos clientes, e não os cliente de acordo com as necessidades da empresa.

Marketing Tribal, é um conceito extremamente interessante, sobre a relação entre uma empresa e os seus clientes. Tradicionalmente a comunicação é unidireccional, da empresa para o cliente, e a mensagem é que exclusivamente “publicitária”. No entanto cada vez mais vivemos em comunidades, e como comunidade queremos “experiências” queremos ser uma “tribo” então o Marketing não deverá evoluir também e escutar esta tribo, de clientes, que se apaixonam pelos produtos em vez de os consumir, em que o imperativo não é “publicitar” mas sim “escutar” os clientes e tentar satisfazer as necessidades desta nova tribo.

Bem, ok, posso não ser um expert em Marketing nem em CRM, mas sei que achei a conferência extremamente interessante, e convido-os a passarem pelo blog do evento crm onde assim que possível deverão estar as apresentações

Certificação LPI

11 April 2008 – 18:14

A algum tempo atrás realizei com sucesso a certificação de LPI Nivel 1 (LPIC-1), composta por dois exames ( 101 e 102 ).

Depois continuei o meu caminho a nível de certificações LPI, realizando os exames 201 e 202, necessários para obter o nível de certificação 2 (LPIC-2) , e recebi hoje os resultados e lá consegui passar, por isso agora sou LPIC-2 :-). Ao mesmo tempo que eu, o meu colega Pedro Oliveira também realizou o exame que lhe faltava para LPIC-1 e é também oficialmente um LPIC-1, parabéns Pedro..

Para quem não conhece esta certificação promovida pelo Linux Professional Institute, resume-se com uma certificação de Linux “Genérica”, isto é, não se está a certificar que eu (ou outra pessoa) sabes trabalhar e/ou administrar esta ou aquela distribuição de linux, mas que de uma forma geral eu possuo conhecimento de Linux, independentemente das particularidades de uma ou outra distribuição de Linux.

Em particular, quer o material de estudo que usei, quer o programa da certificação, requer explicitamente que os candidatos conheçam dois sistemas de pacotes (é aqui normalmente a grande diferença entre distribuições de Linux):

  • rpm - Usado por distribuições como Redhat e Suse
  • deb - Usado por distribuições como a Debian e o Ubuntu

Se quiserem obter mais informações sobre estas certificações podem consultar o site www.lpi.org ou no site português mantido pela “Master Affiliate” para Portugal, em www.lpi.com.pt

Utilização de CAPTCHA para evitar abuso dos forms

7 April 2008 – 13:30

Um dos problemas (leia-se inferno) de tudo o que é “mundo online” é o SPAM, seja ele sob a forma dos malfadados emails que recebemos diariamente, prometendo muito dinheiro, ou muita coisa por menos dinheiro, ou outras coisas (normalmente ao nivel do comprimido azul)

No caso dos formulários, tais como os que existem neste blog, para comentários, o raio dos BOTS, insistem em fazer POSTS, na maior parte das vezes única e exclusivamente para “sujar” os comentários com inúmeros links para sites do género dos referidos em cima… ou outros que tal…

Apesar de achar os CAPTCHA um pouco chatos, já passaram a fazer parte dos formulários online, e pouco a pouco os humanos habituaram-se a resolver estes enigmas (ou pelo menos a tentar).

Um projecto que achei muito interessante é o reCAPTCHA, o intuito deste projecto é simples . Já que vamos perder tempo a copiar as palavrinhas para podermos colocar o nosso post, então porque não usar essa mão-de-obra para ajudar a traduzir livros, que os sistemas de reconhecimento de caracteres não conseguem traduzir automáticamente ?

Bem da minha parte não acredito que seja a melhor ajuda, mas pelo menos activei a extensão de reCHAPTCHA para o WordPress, e dei assim o meu contributo … pelo que têm uma boa razão para deixarem os vossos comentários, estão a ajudar a traduzir livros ;-)