How hard is it to learn OpenERP

I thought I’d write this post as a lot of people who arrive here and read this blog seem to want fairly basic installation and guidance getting started with OpenERP.  This is really just my experiences but I hope it helps you.

First – where i came from.

I have a degree in Information Systems and Computer Science – although unused in real work.

I have been involved in basic business processes from a very young age, writing spreadsheets, taking accounts to trial balance, invoicing, creditors, tax returns, running computer systems that kind of thing for my parents businesses.  My first real job was managing a Dataflex based accounting system, writing SQL queries for reports, requirements for change, end of month (I remember reading a long time ago that a successful eom with CBA was akin to winning the lottery).  By 20 my company employed me to manage the implementation of the system in their other offices throughout Australasia.  <insert 15 years as a salesperson/marketer here>  Basically I know accounts, I know databases, and I know what I did and didn’t like about accounting systems and the companies that sold them.

Maybe you have taken a similar path, maybe not.  So OpenERP, the basics.

Do i need (to be) a programmer?  I would like to say no, but if you are seriously looking to deploy OpenERP you will need to do some programming.  Since embarking on this journey, I’ve had to learn Python and XML from scratch after a C/C++ education.  Forget the tutorials that show you customising the interface in 18 minutes through GUI – you need to create modules, by hand, for anything but the simplest module.  However, as a result there is a massive payoff – you understand precisely what the program is doing.  Over 18 months, and 4 months full time – I’ve smashed my head in to the wall that many times, thrown stuff and been at my wits end.  Now, when something goes wrong, I look at a cryptic error message and can quickly deduce the problem.  Most of the problems you will experience, you will need to solve yourself.  Programming is more sensible with Python than with other languages I have used, and because you are using the Openobject framework and extending existing functionality I think Openerp is actually a good way to get to grips with basic Python, as there is lots of code to look at, adapt and play with.  Just on that – do run your server in debug mode in an IDE like eclipse, and step through a transaction start to finish – just to appreciate what needs to happen – but not until you can program a bit.

Community support? In all honesty, I find it really poor, but improving.  There are a few outstanding contributors, primarily OpenERP partners, with the occasional OpenERP staff response, but the vast majority of posts will go unanswered.  I answer where I can, but the conclusion I have reached is the community just isn’t experienced enough yet and fumbles along together.

Windows or Linux?  some might disagree, but for me save yourself a headache – use Linux, and Ubuntu at that.

SQL? Openerp uses postgres – once again save yourself a headache, anything else isn’t worth the effort.  As someone with SQL query experience, I’ve not had to write one for OpenERP yet so SQL knowledge isn’t vital.  Database tuning might be.  That said I think it is a good idea to get familiar with your database – I use pgadmin3.  Understand how objects link to tables.  There will be times you need to do a manual hack – my favorite, custom module that fails on install and crashes client so server can’t restart.

Do not underestimate the amount of work it will take.  Especially if you are working on trunk.  The documentation is often out of line, or if it is in line, you are so used to it being wrong that you don’t believe it.  That said, read the documentation, all of it, more than once.  I know you won’t, but eventually you will.  These days I still keep the developers memento – 8 page thing in 3 columns – close to hand, as well as a print out of the online version of the developer book (not the downloadable pdf).  However, the rewards are worth it. One day you will stop bashing your head and it will make sense.

At about that point the Rapid Application Development promise becomes real.

So to start -

Learn Python and XML – I used the google training for python, read openerp code, wrote little scripts.  If you have some kind of programming background this will take a couple of weeks, if you have no programming background but feel you have a personality inclined towards it, then 8 weeks is a fair estimate.  This is for a basic level of competence.

If you have a windows background – install Virtualbox and do it on Linux – learning Openerp on Windows, in my opinion, is a waste of time – you will just need to relearn everything once things get serious, and anyway Linux is much easier in the long run.  I already knew Linux coming in to this, but boy do I know it now.

Learn Launchpad and bazaar.

Read the documentation – all of it (well not the module index – that is just stupid).

Read the forums.

What not to do.

Expect it to work out of the box, configure some settings and away you go.  This is kind of wrong, but it isn’t.  Openerp has improved (lots and lots) and can be configured out of the box to work, in the way OpenERP designed it to work.  This will not fit your business – guaranteed.  Some modules in extra-addons might help, but ultimately, you need to understand OpenERP end to end before you can use it out of the box for anything more than the simplest business (in which case, use something simpler).  In the end, I chose OpenERP because I could see the power of the future, and I’ve now been through a lot of the pain and yielding results.  I don’t regret that decision for a second, but what you get out of openerp is directly proportional to the time and money you invest in it.

I’m sure there is many things I have missed, but hopefully the point is coming across, this is not for the faint hearted, but it is worth it.

你可能感兴趣的:(openerp)