How long will this take to start developing decent plugins?

How long will this take to start developing decent plugins?

by Andrew Normore -
Number of replies: 3

New job here, just wondering how much time I should expect to put in toward learning, before I really start to become a useful member of the team here?

Thanks!

Average of ratings: -
In reply to Andrew Normore

Re: How long will this take to start developing decent plugins?

by Mary Cooch -
Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Testers Picture of Translators

Years and years!smile No - seriously - welcome to Moodle and I presume you are saying you have got a job as a developer for Moodle at your institution? I don't know anything about development or making plugins but it would help if you said what skills you already have - php etc -and how much  you have already used Moodle. You are certainly in the right place coming to the forums in that you can both ask and answer and become useful from day 1 like that.

In reply to Andrew Normore

Re: How long will this take to start developing decent plugins?

by Benjamin Ellis -
Picture of Particularly helpful Moodlers

I learnt Moodle plugins 6 months ago and had wrote my 1st block in a week after starting - that is with PHP experience of serveral years - but many more years of web development exp.

Average of ratings: Useful (1)
In reply to Andrew Normore

Re: How long will this take to start developing decent plugins?

by Ray Morris -

It's totally dependant on you, your background, and mostly whether you see things as individual cases, or your brain automatically generalizes.

Moodle is big though - 1.1 million lines of code or so, so there's a lot to learn.  For reference, that's three times as many code lines as Apache, if you've ever written an Apache module.  The API is pretty big.  Like writing Apache modules, you can pretty quickly learn to do it "wrong", like writing your own SQL queries, then you learn to do it "right", calling get_record().

I've had people working for me, with many years of experience and a CS degree, who would NEVER be able to write a decent plugin.  I came to Moodle with fifteen years of experience writing modules for other systems and was authoring working Moodle modules, simple ones, within a few days.

The thing is, my brain generalizes.  I write modules.  I already knew how to write modules.  The only thing that changed is those modules now use the Moodle names for the functions as opposed to the Apache names, the Wordpress names, or the kernel names.  For some people, writing a Moodle module, an Apache module, or a kernel module is all the same thing.  Those people will have no trouble learning the Moodle framework.   You may be one of those people if you find yourself accidentally using two or three different programming languages in the same file.  C, Perl, PHP, Bourne shell - it's all the same for some of us, so we forget which language we're writing in.

 

If you're the other type, the type of person who doesn't confuse PHP syntax verus Perl versus C versus JavaScript, you've got a big job ahead.  If you had to learn javascript seperately from other languages you already knew, you'll have to learn Moodle programming from scratch as well.

 

Average of ratings: Useful (1)