← Back to team overview

openerp-brazil-team team mailing list archive

Re: fields function e tropicalização

 

>
> 2009/8/19 Luiz Franca <luiz@xxxxxxxxxxxxxxxxxxxxx>
>
>> [...]
>>
>> Quanto a tropicalização, encontramos muita dificuldade na analise dos
>> módulos pela pouca documentação(e fraca), e na visão que tivemos achamos que
>> daria muito mais trabalho para adequá-lo aos costumes e leis aqui do Brasil.
>> Por isto resolvemos desenvolver do zero, o que tambem não está muito fácil,
>> (embora esteja caminhando) por causa tambem da pouca e fraca documentação do
>> OpenObject.
>
>
 Ola Luiz,


espero que vc me desculpa de divulgar aqui seu email para a comunidade, pois
acho que esse assunto ilhe interessa.



*Porque eu nao acredito numa alternativa externa tipo "desenvolver do zero":
*


Fiquei sabendo da iniciativa. Peço desculpa pelo atraso na minha reaçao, é
que eu estava muito ocupado esses dias com a criação da Akretion.com e com
os primeiros clientes.
Mas sobre esse assunto devo dizer que infelizmente não acredito nesse
caminho de ir do zero.
O OpenERP ja vem funcionando muito bem na França, Belgica, Espanha,
Inglaterra, Alemanha, India com localisaçoes eficientes. E são varias outras
que já estão vindo. Eu confesso que não acredito que não se pode adaptar o
OpenERP ao caso do Brasil, assim como foi feito, por exemplo, com
Adempiere.

Por outro lado, por ter analisado todos os ERP open source a fundo (veja
esse relatorio
http://www.smile.fr/publications/livres-blancs/erp-open-source ), eu sei que
é MUITO complexo desenvolver um ERP com futuro, partindo do zero. Levaria
pelo menos uns 2 ou 3 anos com varias pessoas para fazer algo genérico
semelhante ao OpenERP (a menos que seja feito  apenas para um caso
particular). De todos listados aqui, ainda aposto que apenas o OpenERP vai
sobreviver (e como) e passar a ser um sistema atual nos anos que vem. Por
exemplo, aposto com muita tranquilidade na derrota do Openbravo, apesar de
20 milhoes de U$ de investidores, bem mais do que foi investido no OpenERP.
A coisa nao é facil e nem é questao de dinheiro e de tempo: é preciso ser
genial em algum momento. Por isso acho que deve-se pensar bem antes de
tentar tal coisa. E como vocês justificarao que ficarao exluidos dos +500
modulos desenvolvidos mundialmente no OpenERP que permitem lidar com
qualquer tipo de business?

Agora, claro o OpenERP não é perfeito também. Ele só tem uma concepção muito
acima do que se encontra geralmente neste tipo de software ERP. Para quem
desenvolve aplicações web em Ruby on Rails, ou Django, OpenERP não parece
nada excepcional nem suficientemente rigoroso. So que nao existe ERP baseado
em Rails nem Django, e se for para existir iria demorar uns 2/3 anos também,
caso encontrar alguém do talento do Fabien Pinckaers para lidar com um tal
projeto.
E dado que o OpenERP já vai assumir a liderança mundial, melhor ir com ele,
melhorando ele do que sonhar algo que não vai existir.

Ao contrario, quando olhar a tecnologia procedural antiga puramente SQl
usado tanto na SAP como nos ERP's TOTVS que abalam um banco de dados
proprietaros por nem ter um cache de ORM, linguagens tipo COBOL que fazem
fugir qualquer programador competente, quando vê que os outros são
monoliticos, tem processos harcoded sem motor BPM, não tem interface web,
não tem webservices nativamente expostos, o OpenERP realmente faz papel de
modelo.




*O caminho para tomar conta do OpenERP:*


Agora é claro, tomar conta do OpenERP não é fácil. Hoje em dia, a
documentação passa a ser ate boa no site openerep.com, pelo menos para
apenas uso, para um publico que já fica confortável com ERP's.
So que vocês já entenderam isso: a força do OpenERP e de ser facilemente
adaptavel, nao de ter tudo incluido como SAP mas que precisa de PHD
certificado tipo cdfsuperando trabalho chato com ajuda de muita grana para
adapta-lo. Neste sentido o OpenERP segue a ligna do open source que vence:
começa a ser um software feito por programadores para programadores
(dificilmente tem outro caminho no open source lembram de Linux 10 anos
atras). Felizmente, cada dia que passa vem mais incluido e menos bugs, entao
se democratiza, ate que o Linux de nerd se torna Ubuntu ou Android. E claro
que neste processo ainda estamos um pouco cedo.


Então como tomar conta do OpenERP? Bom, não vou mentir, se for para fazer
mas do que usar, por exemplo com o objetivo de implementa-lo, ai tem que
entender bem de programação objeto e banco de dados. Porem, escrever ou
entender um modulo nao e tao dificil que nem escrever um compilador por
exemplo, e so mais dificil do que fazer um site pirata em PHP e por isso
muita gente se engana. Por exemplo eu sou apenas engenheiro generalista,
tipo mecanico/civil e nao tenho a menor dificuldade com o codigo do OpenERP.
Foi a mesma coisa com varios coleguas com perfis semelhantes na França.

Então,  alem da documentação em ingles, o melhor jeito por enquanto é o
reverse engineering mesmo. Vc entende as bases do framework Openobject e
depois, para cada modulo suspeito de interessa-lo, rapidamente faz um
diagrama UML do modulo, do fluxo BPM e teste (pretendo criar uma tarefa Rake
no connector Rails OOOR que vai criar UML automaticamente).
O OpenERP tem essa coisa excepcional que globalmente esta escrito em
linguagem bastante abstrata. Quer dizer vc facilmente chega a ter um visao
geral lendo o codigo.

A coisa nao e comum. Desenvolvi em Java desde 2003 e sei super bem usa-lo.
Mas quando tentei fazer esse reverse engineering com o Openbravo, tenho que
dizer que tinha que ler toneladas de PL/SQL herdadas de Compiere, tipo 2000
linhas de PL/SQL para entender o que acontece na valorisaçao dos estoques,
para ver onde que nao dava certo. A coisa era impossivel porque PL/SQL e o
nivel zero da abstraçao, vc mexe com dados brutos, nao tem nenhum conceito
maior que um modulo vai herdar ou que vai encapsular em algum lugar. Depois
que entendi mais o objetivo do Openbravo (apenas tentar revender e correr
rapido com a grana, na minha suspeita), passei a acreditar que nem o team do
Openbravo entendia completamente aquele milhao de linhas de PL/SQl que
herdou de Compiere (bem escondidas em CDATA dos XML). Por exemplo la em
2008, quando ja era o ERP do seculo seguinte o marketting ainda tinha
tabelas chamadas "TIRE_STORAGE" diretamente herdada do Compiere de 2001
destinada a Goodyear Germany que ninguem fez questao de limpar enquanto nao
tem lugar num ERP generico, claro.

Essa coisa com o Openbravo tambem não e exceção. Todo codigo tipo ERP que
mexi antes do OpenERP era assim: nível de abstraçao super baixo, abarrotados
de compromissos comerciais para dar lucro a curto prazo. No OpenERP nao e
assim, se vc for um bom programador, e tambem tem conhecimentos sobre
processos ERP's, ai vc vai poder entender e implementar tudo, sem ter que
engordar nenhum dono alem disso. Depois de 2 anos de integração, passo a
saber para que serve cada uma das 250 tabelas e de vários outros modulos sem
que isso tenha sido muito sofrido.

Parece complicado, mas também, para entender as milhares de tabelas do SAP
(que então tem essa politica de já ter imaginado qualquer caso, então tabela
em vez de facilmente herda-lo) não e mais fácil eu acredito.



*Agilisando a comunidade brasileira:*


E finalmente, juntando a comunidade como nos pretendemos fazer, podemos
alcançar isso muito mas rapidamente. Agora estou dedicando tempo para isso,
o Renato Lima tanbem esta se dedicando bastante apesar do trabalho dele e
vamos ajudar a comunidade a tomar contar do OpenERP. Acredito que o esforço
de localisaçao pode ser acabado daqui ums 2 meses a esse ritmo, nem isso
talvez.

Alem de oferecer serviço de integração para empresas medias, a Akretion,
tanbem vai propor formações a preço competitivos e actuara na comunidade
assim que eu fazia na França, ate para futuros integradores. Não tenho medo
de concorrência, por enquanto só e preciso crescer a comunidade no Brasil.
Depois que varias pessoas passam a entender varias partes do ERP, vão se
ajudar mutualmente e chegar ao ponto de "polimerisçao" em que todas essas
competências se ligam num conhecimento de comunidade coerente que vai dar um
suporte eficiente para os iniciantes. Eu diria que esse ponto acabou de ser
atingido na Espanha, e foi bem ultrapassado na França onde a procura explode
literalmente. Mas tb não e preciso ir mas rápido do que a musica, porque
ainda precisa melhorar umas coisas no OpenERP e a melhor fortalecer o core
antes que demais pessoas ja chegam a depender dos limites actual sem
capacidade de se adaptar (os precursores de hoje terão essa capacidade de se
adaptar, pensa em quem ja usava de Linux em 2005 por exemplo).


Bom e isso, so para falar que eu bem acredito na tropicalisaçao do OpenERP e
faremos o que e preciso para isso acontecer logo. Espero que voce revisa sua
escolha de re-fazer tudo do zero e manda bola com a gente, mas respeito
outra deciçao caso tudo respeitar a licence GPL.


Mas elementos concretos para a localisçao a seguir rapidamente, aguardem.


Raphaël Valyi
Akretion.com