Tuesday, June 10, 2014

Sunday, June 08, 2014

Back from OpenDays 2014

Back from OpenDays 2014

Link to you tube videos index is already posted. I suppose slides will follow.

Version 8 should be in RC in July 

  •         New API (ORM)
  •         CMS and e-commerce
  •         New front-end views (Odoo dev will be more and more HTML crafting…)
  •         New warehouse management (quants, routes, evaluation and retrieval method)
  •         Gamification, tutorial
  •         New tooling (gitHub based)
  •         Many more small improvements on POS, surveys, marketing, mass-mailing

Strategy analysis

1) More marketing

-        Odoo has appointed a Chief Marketing Office, so the new brand, the logo etc. OpenERP claimed they were not doing marketing but in fact was doing some, Odoo now assumes this DNA change.

-        Note their plan is IMHO smart marketing as it includes developer marketing (api docs, how-to , moving to gitHub etc). Good move.

2) CMS , e-commerce, website, more users

There are much more web sites than erp instances. As open-source business is commonly based on the fremium model (only a tiny percentage of users pay for the software). The priority is ‘more users’. Having back-end and front-end integrated makes many things simpler (if you trust the security inside the system).

3) Direct sales

Well the Sass approach is direct sales, quick start methodology is direct sales so is renewal team, direct sales team etc…
The enterprise contract is support / maintenance / migration, their service offering is fixed price service for implementation, they also provide data import, web custom design.

Although they claim to be interested in only very small projects their demonstrated business case (20 employees in French speaking Belgium) is a nice company… They target small, big and finally medium market... well I think everything is the word.

Currently they don’t officially propose customization. But the fact they allow in 8 to deploy custom data modules and several times they mentioned loading custom modules on the Saas as something being evaluated, make me thinking that they don’t because of technical limitations that will be lifted off sooner or later…

Going direct requires that good accounting localization is built-in… They announced that 9 will include around 8 complete standard localizations. I guess they will start by Belgium (obvious), France probably Switzerland….

In summary, better the software is, less they need partners, more they will go direct. 

Partners must therefore think their strategy based on Odoo approach:
  •   have your clients (don’t expect leads);
  • build differentiator with software outside the Odoo scope;
  •  verticalize out of the main street erp activities;
  •  fork (small word, big work).

As stated by a colleague ‘your competitor is your best friend that’s the magic of open-source’. So is it between the editor and the partners…

OCA – Community

We had a great time at the first general assembly of the Odoo Community Association. Grouping contributing voices is a way to get a bit attention from Odoo, developing alternative migration tool and complimentary modules is a good insurance to keep the software open-source and a great place to work for independent integrator.  

Last words


I cannot forget the great times with friends and colleagues. It is always a pleasure to meet and party with you guys ! See you next year !








Saturday, June 07, 2014

OpenDAYS 2014 - link to the video


Back fro the Odoo (formerly OpenERP) Open days:

here is a link to all the you tube videos :

https://lists.launchpad.net/openerp-community/msg05952.html

Sunday, July 07, 2013

Back from OpenERP Community days 2013

So here is my completely non exhaustive summary of these 3 days.

1) OpenERP Community Association

I think this is a great initiative from a few partners attempting to clean up the community branches and provide a structure for shared development. Let’s hope many contributors will join and cooperate. While I understand the target, I think the association must have two levels for projects registration: full community based and simple references of other open-source initiatives. The main reason being that transferring intellectual may not be acceptable for some contributors or simply impossible for some projects.

2) New connector for Magento

Looks like a nice rework and a first successful shared funding attempt.

3) Belgian localization.

I cross my fingers, the two first points may be inspiring for solving some issues around contributed modules including financial localization for Belgium …

4)  OpenERP as a CMS and e-shop. 

I understand the strategy, this may be achievable. But I think it twill take a couple of years before OpenERP can equal the web leaders. Those who attended Antony session will understand my point : I know Drupal, Joomla are sometimes difficult to use… but they do also a lot of things, require competencies and have a learning curves .. so does it with OpenERP…

5) Presentation of the new warehouse management for OpenERP version 8. 

Great initiative from c2c again ! I will try to come back on the new concepts, rules and quants. It is promising and should solve many issues we have with stock management including cost computation, traceability and performance. To be tested end of the year (in trunk).

5) Accounting workshop

We had a great workshop about accounting with Quentin. At least he now has points to add on the roadmap… Personally I really enjoyed these workshop sessions, especially with friendly faces…
I will try to get back the pad and publish it as it is…

6) Pentaho reporting

I attended a last minute schedule session about Pentaho reporting. Finally, one report engine that is accessible to functional people… If they solve a few issues (like support of translatable field): we might be saved.

7) New API expected in version 8

Shame on me, I missed the new API presentation expected for version 8 but I favored accounting workshop and Pentaho reports … I suppose the presentation slides will be posted soon. I heard a lot of positive feedback on these changes.

8) News from the testing crypt

C2c presentation over testing. The presentation was more general than what I expected but remember at least that OEScenario is  now full Python. No need to learn Ruby…

9) When can we expect version 8 ? 

No official word, but we are a few to believe mid 2014 is a reasonable target.

Monday, October 01, 2012

Company_id default value

  
Looking at base objects in OpenERP is always source of inspiration.

I found the following

 'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'res.partner', context=c),

So there is a method for finding the company_id to use for an object - here a partner. Company_id is important since this field is used for partitioning your db between different companies.

Even better looking at res.partner, I found  ab oject called  'multi_company.default' !

Basically there is a small  and 'hidden' rules engine to set company_id ! Nice. 

Sunday, August 26, 2012

Our KB project - going to Drupal

Very often we exchange tips with colleagues and partners. Things like do you have an example in OpenERP of a search / function field etc

Simply, we exchanges these by e-mail. Best of them go in mail folders.

When working on windows I am using OneNote (great MS office app with IMHO no open-source close equivalent).

I think these e-mails represent valuable material. Good for us during projects, but may be good for other people. So I decided to setup a knowledge-base web site where we can easily store and publish tips and code snippet.

My intention is to use Drupal instead of my usual Joomla. There are 2 keys reasons:

  • Taxonomy : in Joomla the section/category is limited and makes impossible to classify articles. World is not a 2 levels tree - n level (Joomla 2.5) is not better. What I am waiting for since at 7 years: be able to put 1 article in multiple categories... E.G python / openerp / query / partner etc
  • Front-editing : I just want to be able to login and change , cut and paste articles directly. The separation between the site and the admin may give security feeling for a classical site but is clear not appropriate for a community sharing site. 
Installing Drupal 7 is as easy as with Joomla.

Creating content-type is also easy to manage. In Drupal 7 the so called CCK is now a core module. One click and you are done.

However my first snippet post was disappointing... All the alignments are lost. Well for python samples with indent being semantically import the result was not that bad.

2 google search later? I found a Geshi filter module. Well a drupal module using a PHP library called GeSHI.

http://qbnz.com/highlighter/index.php

Much better than simply keeping indentation. It hilight source code syntax with colors for an incredible number of languages.


This is were  hughe communities of coder are incredibly good - thanks to all Drupaler and PHP guys and of course the GeSHI autors - you are great and you did my day !

Friday, August 17, 2012

openerp fields.py - paradise of extensibility

Here is an extract of fields.py one of the openerp kernel file:

class _column(object):
   
.....

    def __init__(self, string='unknown', required=False, readonly=False, domain=None, context=None, states=None, priority=0, change_default=False, size=None, ondelete=None, translate=False, select=False, manual=False, **args):
      ...
       
        for a in args:
            if args[a]:
                setattr(self, a, args[a])
...

This last for loop is programmer paradise. It simply means you can create any field and add directly data to the field definition like a qualifier or anything you need in the constructor.

Simply cool, elegant and efficient !



Thursday, July 05, 2012

Reading the Belgian E-ID

We start a new project for which reading the Belgian identity card will be a must.

As a start, FEDICT the federal admin responsible for the e-id provides sdk and software in open-source. Cool stuff.

The first step was to checkout http://eid-viewer.googlecode.com/svn/trunk/ eid-viewer-read-only

1) I found in there a pom.xml so I tried maven (mvn command) to build.

2) The first issue was that the Maven installed by Ubuntu cannot read the config files a version 3 is required.

3) Next I moved into one of these cool error message:

 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.1:compile (default-compile) on project eid-viewer-lib: Compilation failure: Compilation failure:
    [ERROR] error: error reading /home/chanon/.m2/repository/be/fedict/eid-applet/eid-applet-core/1.0.5.Beta2/eid-applet-core-1.0.5.Beta2.jar; error in opening zip file
    [ERROR] error: error reading /home/chanon/.m2/repository/be/fedict/eid-applet/eid-applet-service/1.0.5.Beta2/eid-applet-service-1.0.5.Beta2.jar; error in opening zip file
    [ERROR] error: error reading /home/chanon/.m2/repository/be/fedict/eid-trust-service/eid-trust-service-client/1.0.0.GA/eid-trust-service-client-1.0.0.GA.jar; error in opening zip file
    [ERROR] error: error reading /home/chanon/.m2/repository/be/fedict/eid-trust-service/eid-trust-service-xkms2-ws/1.0.0.GA/eid-trust-service-xkms2-ws-1.0.0.GA.jar; error in opening zip file
    [ERROR] error: error reading /home/chanon/.m2/repository/org/simpleframework/simple-xml/2.6.2/simple-xml-2.6.2.jar; error in opening zip file
    [ERROR] -> [Help 1]
    org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.1:compile (default-compile) on project eid-viewer-lib: Compilation failure
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)

It is crap and not telling anything easily usable... luckily a Fedict expert replied very quickly on the support mailing list :

Here is a summary of the answer

The problem

"...one of the repositories that we'd included in our main pom has moved, but fails to return HTTP redirect

as it should. Instead it returns some HTML stating that "we have moved"  ... "

The solution

"... the presence of this repo in the dependencies of eid-viewer is now entirely historical and it may safely be removed...

For now, you can:

- in the top-level pom.xml, remove lines 271 to 274 ( to
incl)

 "


This tip solved my issue - great thanks to Fedict and to Frank !

Wednesday, June 13, 2012

OpenERP - Open Upgrade

Following a tweet I discovered this initiative

https://launchpad.net/openupgrade-addons

To be clear, the migration service from OpenERP is cheap and without competition. Migration of ERP at a fix low price remains unique. The value of OpenERP enterprise is clear: fixed price and increased functionality every year. Unique.

However this paid services might be a problem for very small business, non-profit and verticalisation market (more open-object than openerp). It is one of the reason some people turn to Tryton (an- openerp-fork-that-may-one-day-have-a-web-client-but-web-is-not-important-because-we-have-gtk).

The fact custom modules are not part of the migration per say (or you pay more to get them converted/migrated) leave anyway an area for an alternate market.

I don't expect this to be commercial ready, but can be an help for people ready to spend some time in custom migration !

Please note... I haven't spend a second looking at this migration code... just in case ! So don't be foolish and try migrating your live erp.

Monday, June 11, 2012

Saturday, June 09, 2012

Using nginx as a proxy to gunicorn / openerp


Following the by now best practices with 6.1, I am switching my prod and demo configruation to gunicorn. 
However, it is also recommended to setup a front-end to your server in order to make if faster and more robust.
 
Installing nginx on Ubuntu is easy as :
 
sudo apt-get nginx

setting up the server to proxy the gunicorn/ openerp, requires to add a site configuration in nginx. Here is a minimal version (it works but it contains no safety nor optimisation) :
 
server {
  listen 80;
  server_name demo.xxxx.be;
  location / {
    proxy_pass http://localhost:8069;
  }
}

See nginx.org for more info !

Thursday, June 07, 2012

6.1 technical update

Good stuff

http://www.slideshare.net/openobject/openerp-61-web-framework-tutorial

http://www.slideshare.net/openobject/openerp-61-framework-changes

Monday, June 04, 2012

Precise Pengolin - Ubuntu 12.04 LTS

Yesterday, I installed side by side the new Ubuntu Desktop LT 12.04.

I am not sure I will like the new Unity desktop. What I am sure is that this is the first install of Ubuntu that works perfectly on my HP Laptop (Elitebook 8540w). Even the sleep mode, dual screen, all installed without a glitch !

Congratulation to Canonical & Welcome to Precise Pengolin.

Wednesday, May 30, 2012

OpenERP using multi-processors with gunicorn

Due to Python limitation (aka GIL), OpenERP is basically single processor powered !

Starting 6.1, OpenERP is a wsgi application. Provided you use a good wsgi container you can now
benefit from all capabilities of your hardware.

Basic stuff:

easy_install gunicorn
easy_install psutil

Update the gunicorn.conf.py (db host, etc)

gunicorn openerp:wsgi.core.application -c gunicorn.conf.py

gunicorn provided you the ability to manage your worker process making openerp more reliable.

Config info for optimization etc at gunicorn.org

Enjoy !

Friday, May 25, 2012

Circus around Java - Google vs Oracle goes to an end ?

So  it seems Google won the case concerning Java patents...

http://www.infoq.com/news/2012/05/google-win

I think it is good for Java. The dream would be to see Oracle, thinking to play it open completely and get inspiration form others (GTW is really great).

Wednesday, May 02, 2012

Welcome to the Postgres magazine

When I decided to move to OpenERP, I had to move also to supporting technologies. Python of course (on which I still have a mixed feeling...) and Postgres.

Just one sentence : I love Postgres. It is enterprise ready, robust, extensible it is SQL and now noSQL etc etc

So join me and read pgmag.org

http://pgmag.org !

Wednesday, April 18, 2012

Community days - some links


I think presentations are worth looking at...

Presentations: http://slidesha.re/9zuI5o.
Pictures of the event: http://on.fb.me/J3Sk9p
Tweets during the event: http://bit.ly/HQImsU

Monday, April 16, 2012

Back from community days - OpenERP version 7.0

Here is a very short summary of the community days 2012. It is for sure not complete !

Version 7 :
- continue the interface improvement for better usability (e.g search screen, many2one field).
- simple EDI (not the EDI standard) exchange between apps and OpenERP instances.
- new, more object oriented API.
-continue improvement on the POS. In summary the POS paltform will be Google Chrome (because of better local storage capability).

Version 6 : Great news for those running version 6.0 -  they don't need to leave their Long Term Supported release to get the greatest benefit of 6.1. The web client (and also the outlook plugin) will be back-ported for 6.0. this should be available in April.

Release management: monthly release are gone, the integration and build will be done on a daily basis. This means that what you can download from openerp.com will change almost every days...

Of course they were a lot of very good technical presentations  (web client, pos, q-web, API, Gunicorn, file,). I also attended one excellent presentation from Akretion concerning the e-commerce connectors... great work (but still I don't think I want to put my hands in Magento).

The last day was partners only, great opportunities to hear about business oriented  topics (support, out-of-the-box project,...).

Automating OpenERP backup on windows

Unattended backup is not compatible with prompt for password. Here is a 0 cent workaround...

set PGPASSWORD=openpgpwd
pg_dump -U openpg -f mybackupfile mydbname

Enjoy !

Monday, April 09, 2012

Deploying OpenERP Server with Gunicorn (draft)

Also some good stuff in this presentation about wsgi, load balancing etc with OpenERP...

http://thu.openerp.com/open-days-2012/gunicorn-draft.html#%2820%29

This makes also the framework more attractive...