Now, before I say anymore, let me start by stating that I think it's wonderful to have an open source project that has this much passion behind it. Likewise, I understand that, like every other open source project, Moodle isn't a one-size fits all package and it's not going to be for everyone. Despite my opinions, I applaud everyone who has worked on this project.
I am a software engineer, myself, and as such, I know firsthand how much work goes into projects such as this.
Now, my thoughts...
I HATE the look and feel of Moodle. It's blocky, somewhat cluttered, and doesn't seem to follow any of the standards of design that most people on the Internet have become accustomed to. That said, I hate ANYTHING that has a block-oriented layout to it (reminds me of the various nuke-type sites out there). In my opinion, sites that use a block-styled layout are just being lazy.
The layout of the forums literally makes me cringe. The day of the BB-like forum has long since past. The forums in Moodle are, without a doubt, the worst forums I have ever seen. Again, this is my opinion, but it seems as though Moodle might be best served if it got a bit of a face lift.
To that end, my first task with Moodle was looking to see how difficult it would be to achieve a custom look. A quick glance at the source code told me everything I would normally need to know to in order to make a decision to jump ship. There is no real separation of logic, which not only makes it nearly impossible to create a unique presentation, but also inhibits the ability for future growth as new technology emerges.
With Moodle's wide reaching popularity, why hasn't their been a push to vamp up the code and go with a MVC (or similar) approach? If Moodle were to move in this direction, adopting a purely OO approach, it would be completely extendable and customizable.
Perhaps I'm looking at this from the perspective of a programmer and not an end-user, but there things are important to me. I am more than willing to lend a hand and help with some of the development, but is this even the direction that Moodle wants to go?
One thing to keep in mind is that this project has a very strong focus on being a good course management system, not a completely flexible software development platform (although we are always improving flexibility in many ways).
There are a lot of interface subtleties and ideas that are deliberately hard-coded that way ... many of them you only notice when actually facilitating a group of learners. Some of the coding decisions have also been made deliberately to appeal to ordinary hackers (like teachers) without software engineering degrees.
We humbly give away and improve the system with those goals, if it's not what you need then there's obviously other systems out there that may work better for you.
I hope that my post didn't come off in the wrong way. I wasn't trying to offend you in anyway, I was just trying to offer my opinions. As I stated in the original post, I applaud the efforts made by you and others with regards to the project. I think that Moodle has been an important contribution that has surely changed the way the Internet can be used for educational purposes.
For me, I tend to look at everything from the perspective of a programmer, and I often find myself disappointed at the way things are done. Rather than being able to see the good in something, I also see the things that need (or could use) improvement.
I tried to be specific in my post when I was referring to something that was an opinion. My comments on the design layout and forums, for example, are my opinions and they should be taken just as that, opinions.
I like Moodle, in principle, but I think that a lot could be done to improve it. Some others have stated that the OO approach would somehow hurt Moodle, I disagree with this. The whole idea behind the OO structure is to enhance and extend.
If you are interested, I could write up a sort of proposal outlying some of my ideas, and perhaps I could even work on a quick mock-up for you and others to take a look at. If you not interested, that's fine too.
I didn't post this topic to upset anyone, and I didn't post it because I wanted to insult the project. I posted what I did because I see something truly amazing in Moodle and I am willing to contribute some fresh ideas towards future development. It seemed the more logical approach to things as opposed to starting a new project from scratch.
Nonetheless, it does seem as though I struck a nerve in some people. Apparently, if I'm not "with" everyone 100%, I'm against them, and I have no interest in being an enemy of anyone's.
That said, if there isn't an interest here in getting some additional perspective, then I shall go elsewhere and won't take up any more of your time, or the communities time.
you've definitely struck a nerve -- you've said how you hate stuff in moodle. It's a strong word.
Now, instead of "things I hate" list (and no friends!), help us with a list of 5 small things you are considering crafting a small patch for. "Things I think I can start helping with".
But make it concrete -- nothing big and wide-ranging. Rather... "I have seen these 3 forums out there (links or screenshots), and I want to cherrypick this aspect of example a, this other aspect of example b and something else from example c... working on it". Then experienced moodle developers can maybe help you, or point out issues with what you want to do.
General "I want to fix moodle" posts are inflammatory, and as you don't provide a plan, useless. Actually, now that I remember... I recently adapted a document from the linux kernel team, that they use for new developers -- strongly recommended
(All FOSS projects get people saying "I want to be your friend, but btw, I so hate your work, you're all so stupid". Collaborating in the FOSS space means both sides have to get over such stupid opening lines. Those lines usually come from people who never in their life built a similarly successful program in that space (and unless you are the original architect of BB or WebCT, that means YOU). However... if you start sending small patches fo review and act civil, we'll get over it quite quickly . How about that?)
That said, though, like it or not, consumers (in this case prospective students) place a lot of value on the overall look of a website. There's an old adage about not judging a book by it's cover, and while I believe this to be true, the Internet is a perfect example of this.
People are less likely to purchase a product or service from a website that has a non-standard design; or specifically a design that lacks the touch of a professional designer. A professionally designed site (a definition that is somewhat cryptic, since this too is a matter of personal opinion as to what constitutes a professionally designed site) is considered be safe and trustworthy (which we all know isn't the case, but that doesn't matter).
This is not to say that Moodle falls into the category of an "unprofessional site". While I may not find the design/layout pleasing to the eye, my ego isn't so large that I think my opinion is universal. I would, however, like the ability to completely change the design elements if I so desire, without having to modify the core.
All the Moodle sites I have looked at look pretty much the same. In one sense, this could be a good thing, from the users point of view, since a student could go to any Moodle site and participate without having to learn a whole new structure, etc. On the other hand, this could also pose a number of security problems (Phishing, etc); though this seems somewhat unlikely.
If I didn't think that Moodle was a worthwhile project, I never would have bothered to post anything here in the first place; I would have simply created my own system or found another LMS.
I have no problem submitting a plan, or detailed suggestions, etc. But I wanted to see who these ideas would be received, and I was curious as to whether or not anyone else shared my thoughts.
I also don't believe that I directly implied that Moodle needed "fixing", per se. I do, however, believe that Moodle could be extended and made more future proof. There are some incredible changes occurring with regards to the Internet right now. A good example of this can be found in the next release of PHP.
Most of the the techniques used for coding applications that have been used in the past (and even in some current applications) will simple NOT work in the next release of PHP (and again, I am not suggesting that Moodle will not work in PHP 6, this isn't even a concern of mine, just trying to make a point).
There are some very good and practical coding techniques that can help ensure that an application, such as Moodle, can grow and expand into the next era of technology, and that was what I was suggesting in my post. Moodle, as is, if perfectly fine for most situations. However, I think it would be great if future versions of Moodle were designed in a way that would make it the de facto platform for all learning enviornments, no matter how complex one's needs might be.
Your opinion is that you hate how it looks. That is fine, but it _is_ a bit ackward to say in the first date. Try it in real life.
And note that Moodle uptake is significantly better than any other LMS, free or not. In fact, the uptake is strongly bottom up, closer to end users -- not a top-down uptake which is forged in a boardroom.
So even if it is by the measure of "Moodle UI sucks less than X" (Joke! Google for "Linux, sucking less since..."), it is on whomever proposes a change to show that Moodle+patch sucks less than Moodle. So far, MartinD's UI design instinct has been excellent, and the results are good, as shown by factual research, like what Michael Penney has done to compare usability and user satisfaction for Moodle and BB.
And in terms of MVC, OOP, etc, stop assuming the Moodle team doesn't know them. Some aspects of those techniques we use, some others we will use in time. Others we are working on currently (pop quiz: do you know which ones?). We cannot break with legacy PHP support quickly, we cannot break preexisting custom modules and plugins just because MVC is prettier or PHP6 sexier. And MVC (and pure-OOP) is hard hard HARD to get to scale well.
Take your time. We have all been hacking on this for a while. So come up to level and you'll see that your perspective changes.
> There are some very good and practical coding
> techniques that can help ensure that an
> application, such as Moodle, can grow and
> expand into the next era of technolog
This is marketing talk. And assumes we started coding web apps yesterday. WRONG.
Every couple of months we get someone coming to teach us how to build web apps. Just like you. That is why I wrote that wikipage.
The moodle team has a big mix of people, but a big chunk are professionals that have been working on web apps of different style and languages for years. Google the names of the developers for background. Do your homework.
And if you want -- there's a little project other moodlers have done (called Mahara) that previews some techniques we could use in Moodle, and we probably will, in time. It doesn't do what Moodle does, but the infrastructure is a good incubator.
MVC and OOP are quickly becoming the new standards. PHP5 places a lot of focus on this, and PHP6 will push this even further. Hordes of other applications have either already switched over to a MVC and/or OOP approach, or have started the transition.
And just WHERE did you get the information that MVC and OOP is hard to scale? Was this something you read in FUD magazine?
It seems to me, the only doing any "marketing talk" is you. Seeing as how you provide "commercial" services to Moodle, I can understand why you would be against any real push towards MVC and OOP, as this would make it very, very hard for you to scale your profit margins in the right direction.
This is really all just a bunch of nonsense, and this discussion is neither productive nor helpful to anyone. I am deeply sorry I ever started this in the first place.
Thank you all for your time and input. Despite having different opinions, I gathered a lot of valuable insight here regarding both Moodle and the supportive community behind it.
I shall now depart from Moodle-land so that I can return to my village of idiots.
In Moodle you can click on the user's profile picture to learn more about the user.
Sean, I don't recall your saying what your experience is? How large of a installation/development project have you managed? Where is it?
..MVC and OOP are quickly becoming the new standards
When we visited the OOP conference at King's College in London in 1992(?) with Grady Booch and the other OOPS (later together as the three amigo's of Rational), we all thought that MVC and OOP was taking over.
After 15 years it still is promising... and I show my daughter - now a student at that same King's - the shop where I bought her first Teddy Bear in these old days.
The point of the old fashion look and feel IS an open nerve for me and others, so an awful colorful theme with bigger rounded icons, shadows, and other stupid stuff like flashing animations is high on the list of my users.
(I still prefer the formal_white)
People are less likely to purchase a product or service from a website that has a non-standard design;
From what I can see, eBay and Amazon both have a "content in the center with side blocks" layout, much like the default Moodle theme.
If it doesn't work with us, can I suggest another project? "Hey Linus, I'm shocked at the mess this kernel thing is. I like the idea in principle, but I can't believe you've been doing this for 15 years and you don't know what you are doing! And there's like 2000 other programmers who follow you, too! Come kiddo, here's some plan for you and your little team."
1. They have put a lot of work on the project, so those who haven't put so much work should shut up
2. This 'open source' project is actually like a closed village community where any outsider is not welcome
3. Because it is free, the project expects the users to just shut up and accept what is given , as you can't ask too much for free. But perhaps the community has forgotten that they have built the system for the end users.
4. Becasue a lot of people are happy with the way things are, there is no need for improvement.
This kind of attitude seems alien to somebody comeing from Drupal community. THis is one hyper active community which welcomes a critic and where even words like 'I Hate Drupal' would invite only polite and objective comments. This is because the ambition of the community is higher. It does not believe that because Drupal is free , it should be inferior. It does not belive that because Drupal has won so many awards and keeps getting branded the best CMS every year, it should rest on its laurels.
I think that Sean has touched a nerve here. Not because he is wrong, but because he has stated the obvious flaws which appear to a developer within a few minutes of looking at its code.
Comments welcome and sorry for stating again the very obvious.
Moodle is generally a very friendly and supportive place and in 2 &1/2 years I've only seen a handful of threads where people have been upset like this, and most of them involved the same, rather unpleasant individual, who enjoyed playing the troll.
Maybe you can be a bit more specific about some of your points?
The trouble is that a big project like Moodle has a lot of baggage and history. In most cases we know about the bad bits and if we did it again it would all be different blah blah. Please, though, if you are going to be critical don't just assume that everybody is stupid. If you can provide expertise/insight/practical help then great. It *will* be appreciated but you are working with other people with all their frailties and have to proceed accordingly.
It's natural for advocates (and perhaps especially ones not working on core code) to get somewhat defensive about their chosen tools, but nothing is ever perfect (and Moodle isn't anywhere close) ... in my view constructive criticism should ALWAYS be welcomed (as opposed to the destructive kind).
Regarding architecture, your reactions to looking at the code are actually shared by most/all of the main Moodle developers (including myself), which is why huge portions of Moodle are currently being refactored (http://docs.moodle.org/en/Roadmap). Basically the core team are always thinking "what is the worst problem from the huge list that we can fix next".
I see that this is your first posting.
So you walk in to the Moodle community and find it is not what you would like it to be. How do you plan to change that?
In my experience, the community here is the friendliest and most helpful I have been fortunate enough to stumble into. Your points 1-4 bear no resemblance to anything I have personally experienced here, perhaps you would be good enough to give some examples to illustrate your points.
Your comments re Drupal also bear little resemblance to what I have seen in the forums there, I have seen numerous new comers get shot down in flames for having the nerve to say things far less provocative the "I hate Drupal".
I'm not a developer here, or any other place, just a grateful end user. As such, I'd appreciate you opening debate with developers here as to what code needs work and suggested improvements. New eyes are always good to help raise the bar, and from what I've seen over the past few years the developers here would welcome constructive criticism.
- anyone reading this thread should note that Sean later came back and apologised for his somewhat inflammatory "opening" email. He had started writing his own LMS, which got him to study moodle in depth, and become addicted to it.
Can't beat his own words: http://moodle.org/mod/forum/discuss.php?d=77440
Clearly, his perception had changed significantly from the "first impression" - which is largely what we argued about in this thread: his making strong remarks based on a first impression.
His sincere followup post made me very happy, personally.
I have to say I got a good laugh at this thread. The first moodle install I worked on was around 1.4 or 5 and my first impression was those smiley faces have got to go but I did not come on any forum and whine. I changed them. Simple. I think I replaced them with the Skype man and put it all in steel.
Coding a profile mod that gives a male or female figure option is on my to do list. Maybe I'll get around to it this year.
What I really like is that it is not rocket science to make a new look or feel. I once did a punk theme for a site that offered CEU's for hairdressing. No offense to hairdressers but can imagine that in WebCT? Making Moodle do what you want is just plan easy and fun. Anything I can't make Moodle do internally I can always throw in a Moodle frame and keep on going.
I understand Sean's point of view as a programmer. But then I think we (programmers) need to go a step further when analysing systems and system's development.
@Sean I 'm glad you said 'I like Moodle, in principle, but I think that a lot could be done to improve it.'
But if you do read about the history and evolution of moodle which has closely kept pedagogy in clear view and not 'software development or methodologies' then improvement is just a matter of time.
I like to believe that over the centuries , the world has been standing on two pillars - education is one of them and only time will tell if technology will be the other.
Technology will never be the end - but a means to an end.
It tends to go along the line of, "why was this not properly planned as an OO project.....?". The next logical step is, "why was it not written in Java...?".
It's a fair point, but in the real world in which we inhabit if that had happened there would probably still be a large committee of academics planning the project and nothing would have been written. Moodle was based on some very smart decisions (thanks Mr. D!) and has travelled from there via many more smart decisions and some not so smart ones. But what matters is that it got done, it has a momentum and it keeps getting better (and I think, quietly, more OO).
> probably still be a large committee of academics planning the project and
> nothing would have been written
> it has a momentum and it keeps getting better
I guess the truth is, you do your best and know that you cannot be all things to all people.
Of that, one might say, much code has been written, little that works...
Yeah c'mon Martin, how about re-writing it in Java
(struggles into asbestos underpants chuckling with a manic grin)
If you just need new colors/graphics then you just change the themes, and that is pretty simple (see the Chameleon theme, for example). If you want to redo the UI in a big way, it's going to take even an expert coder a few months to really get up to speed (and make sure they don't just start hacking away at various files, but know to create a new couse format, which is reasonably modular). Doubt that if you were dropped in the middle of Google's source code you would be re-doing gmail in the first week.
What are the goals of your project and what other software tools are you considering? What look are you trying to achieve? What is your scope, timeline, and resource budget? Presenting requirements and interface drafts would likely be a useful way to get good advice from the good folks here at Moodle.org.
I guess this was what my first issue was, most of the projects I've used in the past have used a combination of MVC and OO design structures, which makes the application very easy (well easy for me) to build upon. I'm very big on separating business logic from design logic. I come from the school of thought where you never mix together HTML design code with the applications core code (in the case of Moodle, PHP).
If, for example, Moodle was 100% MVC or OO, then redoing the UI wouldn't be a complex task, nor would it be difficult to use other third-party applications (some people have requested phpBB, for example).
This was the real point of my post, I was interested to see if this was something planned for Moodle, or if anyone else shared my views on this.
The project I am working is somewhat complex, it involves taking the same theories used in the Open Source community and applying towards education. I have always found it ironic that so many tools exist in the Open Source realm, yet the knowledge to properly use these tools are anything but "open".
Specifically, I'm talking about universities, trade schools, etc. Knowledge is the most important asset any individual can posses. Every country in the world, especially the United States, should be moving to make education available to everyone.
Obviously, I can't achieve this, at least not to the full extent, but I want to be able to offer free courses that are on par with, say, the Zend Certification, courses (which starts at about $2000).
PHP, and most other languages are open source and made available for free, I think that the education by which you need to have in order to fully utilize these tools should be open and free as well, meaning that any student, so long as they have access to the Internet, can learn everything they need, without having to buy books, pay tuition, etc.
There are some complex elements to this project, but that's the jist of the idea.
Userinterface is only a small part of OOP. The real thing is creating real objects which understand their place in a context (organised by a contract with the other objects in the room.) Then you could drop several activities in a section (like wiki, a calendar and and a forum and they would know how to collab in that room..
According to the Moodle history files, Martin considered to implement Moodle in PLONE which would better fit, but then he realised that he would be the only programmer... By shifting to the runner-up PHP, he made a golden choice, we can say now...
Secondly, you instantly assumed that the person in the article is me, without performing any due diligence. To be fair, your assumption was correct. That being said, you are basing your judgment on my character based upon an extremely limited amount of information.
While I am unable, and frankly unwilling, to discuss the finer details of this matter, I will say this much. What you "see" in the article you posted is not the full story, many other individuals and companies were involved. Moreover, the thousands upon thousands of documents which reveal the facts of the case in it's entirety have been sealed. I should also note that this was entirely a civil matter and was never criminal.
Nonetheless, I never admitted to any wrong doing. An accusation was made against me and others, by a former employee (who was terminated for fraud, btw) while attempting to work out a plea agreement in regards to an unrelated matter.
You can have whatever opinion of me you wish, but if you're going to publicly attempt to attack someone's character, perhaps you would be best served if you actually attempted to get the whole facts and present all sides.
I have dedicated most of my life towards working on projects that, in someway, help others. My production company produced ONLY family oriented content, and the emphasis was always on bettering the community. I donated large portions of the both my salary and my companies income to charitable causes.
I have also volunteered more hours working with non-profit organizations than I have working at any job. If you were to ask anyone who has ever worked with me, or known me in anyway, you would get entirely different view of my character.
Obviously, rather than attempt to discuss the issues I presented, you decided your time would be better spent searching the Internet for information on me. Doesn't seem like a rationale use of your time, but it's your time, so do with it what you like.
I HATE the look and feel of Moodle.
If you hate the look and feel, then there is really nothing here for you to use. The tools in Moodle are low-end at best as you have noticed with the forum tool. We have evaluated Moodle against Blackboard and have decided to continue with Blackboard. People liked the look and feel, but the actual tools were inferior. For example the teacher not being able to edit a post is a big problem. Even bigger problem was read-tracking doesn't work...keeps resetting. Why not just have a way to hide read posts like BB and all other email clients. That is simple and very effective. Also, no file storage for students and teachers having to upload all material in every course was a big problem for us. We tried meta course, but that does not work well. Students have to check two courses and can only enrol courses not individual students. It is far too limiting a system. Good system for those who have no other option, but not a good system for a large school. I do not know about code. I just know tools are not very good compared to others. I do like the look and feel.
Read tracking works ok here, perhaps you have a bug?
Having spent over 6 years utilizing both Blackboard and WebCT at two research I schools in the US, I would have to strongly disagree. The quality (and number) of tools available in Moodle are exceptional. I'm now working in the private sector and our organization does have options. Nearly 3 years ago we chose to leverage Moodle as the backbone to our corporate learning management and have never looked back.
No system is easy to evaluate...and no system is perfect. The beauty in Moodle is two fold:
- It's about education
- It's open-source
If you don't like something about Moodle....change it. If you need additional functionality....create it. Try that with any closed system. If they will even do it (and that's a big if), it will cost you $$. Don't have the technical ability to do it in house, hire a Moodle partner. You'll spend a fraction of what your closed system will cost.
all I can say is that I hope that your name was a joke or a coincidence (it's to closed to an awful expression in Spanish). If on purpose, well, nothing else to say.
But if you name is only a coincidence (I really hope that), I just want to say you that it's to closed to an awful expression in Spanish, so be careful in some public boards when using it. People could become irritated.
Another day I'll talk about the general tone of your post that is really unconstructive, unconnected, unusefulness, unusual and ununderstandably.
Perhaps I'm starting to know why you prefer BB! (Hey, I love BB too, why not, like any tool designed, in any measure, to help in the learning process). Definitively your way isn't the way (or my way).
Thanks for your untuneful post and ciao
The thing about Learning Management Systems is that they become your virtual campus--you can get a great building at a great price from General Steel, however if you are building a place for learning you might want to be able to customize it for the kind of teaching and learning you're institution is doing.
And some of the largest institutions in the world get this.
Ha...welcome to the shark-pool Sean. What made you think you could come in here and make suggestions and express opinions anyway? ....this is "comparison and ADVOCACY"...with a BIG emphasis on ADOCACY!
Being new, you probably don't understand that you are basically debating with Moodle Disciples and Owners of the Moodle.com monopoly....just look at all the "badges" under their photos in this thread . Any criticism, constructive or otherwise, isn't tolerated.....hence the personal attacks....next the thread will be deleted....or maybe moved to the "Island of Misfit Moodlers"....inside joke if you're new .
I think you have a good idea....start a new project. Maybe you could start a real open source one instead on one pretending to be open source. If so, let me know, I'm willing to help.
I'm signing off now so that the disciples can attack me as well....may take a little heat off you .
I have quickly begun to sense that Moodle is regarded as of religion that isn't to be challenged or contradicted, but I suppose I already knew that before posting. In the several weeks I spent researching Moodle, I had come across a number of forum posts where even some loyal Moodle users were put into check after reporting some security issues and/or bugs.
You have to admit, it is a bit ironic though. One would assume that a group of people who would be working on an open source project geared towards education would be a bit more tolerant and open. I wonder if this how well some of these "attack" and "reject new ideas" would go over in their classrooms?
Educators, of all people, should be the most open to criticism and new ideas. In fact, they should encourage it. Nothing good has ever come from praise alone, it takes strong criticism, creative thinking and a good old kick in the pants to push society forward.
Strangely, the tone expressed here is very familiar to me though. I'm trying to remember where I've seen these type of tactics before.... Hmm, someplace in Redmond perhaps?
Anyhow, it seem that I'm going to have create something for scratch in order to proceed with my project. Feel free to email if you would like, and we can talk about working together. I can be reached at lampaddict [a t ] gmail.com.
The zeal with which people defend moodle might also be described as a strength. There is a lot of loyalty flying around, and that leads for a cohesive and cooperative community. When compared to starting something from scratch, it may pay you to to lurk a while longer.
I am an experienced moodler undergone at times similar attacks. Please do not construe every community member is intolerant to new ideas and views. It is unfortunate that your first experience in the community is is a bitter one due to your inappropiate choice of words.
What you intend to communicate is understood by the community at large.
You mentioned that the front end is not impressive. As a progarmer you also understand moodle is highly flexible to have any appearence you desire. This is also moodle
It is a frontend module developed for the suggestion that you have mentioned. You can do much better job and share with the community.
Moodle is huge and having so many features and you need to select the appropriate and add with other third party software.
Moodle is like a radio not aimed to any one but to everyone and you tune to your choice
Moodle is a great community with diverse individuals - some are closed minded and some worship moodle as a cult.
Moodle is a great ship in the hands of its captain not distracted by these postings sailing to its destination.
Misery loves the company. If you feel miserable because of this post you have company of others like me. Do not feel that the community has rejected you.
Providing some actual evidence for your claims (rather than making inflammatory statements, then walking them back as "opinions" when challenged) would be a more productive way to proceed.
Everything in Moodle is there because someone saw a need, flaw, or other shortcoming and took steps to change it. Moodle has over one million lines of code -- that didn't happen because no one ever challenged the status quo.
Bricolage-driven software isn't necessarily pretty. Evolution doesn't always produce swans. Sometimes it produces naked mole rats.
The problem is that grandiose ab initio designs tend to get bogged down in the design phase, and, if they do manage to ship, tend to not survive contact with the real world. On the other hand, evolution-driven designs are constantly improving through contact with harsh reality. That's what some of us were alluding to with the comments about having lots of beautiful diagrams and schemas, but little or no useful working code.
Similar arguments apply to proposals to do a major rewrite of the entire code base to make it conform to some poorly-specified notion of "good design". Convincing a team of this size that they should refactor a million line project (rather than spending that time on adding new functionality) is going to be a tough sell.
BTW, PHP's object model sucks (my opinion). If you really insist on a MVC design, you might be better off with a language that was designed with OO in mind to begin with, rather than a sub-par object model that's a bag on the side of a language that was never intended to support that style. Hammers and screwdrivers are both useful tools, but trying to use one as the other doesn't generally work out.
I wish you well in your endeavor. If you come up with something better than Moodle I'll be the first one to use it --even though I'm a "disciple" with a badge after my name.
Anyway to get back to the original topic, all the blocks are optional, so you can disable them all if you like (from the GUI). Moodle uses XHTML Strict with lots of CSS to control the look and feel. If you want to revamp the interface you just need to get your hands into CSS (which is really the best tool for that kind of job). See http://docs.moodle.org/en/Themes for more info. And finally we have about 20 different types of plugins (most of which use OO) so start there if you need to add functionality.
Everyone else: there's plenty of bugs in the Moodle Tracker if you're bored!
For the troll who started this conversation... who may or may not be a troll. Think about what you've done. Imagine walking into a village. It's an open place, where you can take what you wish. You are encouraged to leave behind whatever you can spare. You are, suprisingly, also encouraged to stay on and help work with the folks from that village to make their village a better place.
Now... that village has a history. It has a very special context that has been created by many dedicated people who've poured many, many hours of their time into making that village what it is. (don't forget, you came to the village looking for something, because it has a reputation) That village has not asked a single thing from you. They did not require or request your presence, but, in allowing you to download and try out their software for free, FREELY allowed you to utilize the fruit of that community.
You comments to that community, on the product of their work that they did not ask you to try out, were not very polite. Guests (and even long time members) are expected to retain a certain degree of decorum in someone else's village. If you do not know how to act in that community, you should stick around for a while, and observer the way that people act, and then act accordingly. If you don't like the style... there are many options out there.
This village... which I myself have spent a little bit of time in in the last few years... does not necessarily accept direct criticism as gracefully as it might. (Martin's comments above notwithstanding) But they've poured THOUSANDS of hours into this work. If you'd poured thousands of hours into it... you might be a little defensive too.
Thanks for the all the help moodle folks. I do appreciate the fact that you do help... and your software has helped me many times. You are all a little hard to get to know sometimes... but patience, I think, has lead me to a better understanding of this community. And I'm kinda fond of it.
Nonetheless, I do want to clarify my position on this. While it doesn't really change all that much, this is what SHOULD have appeared in the first paragraph.
I have been contemplating using Moodle for an educational project that I am working on, but after running a local install and trying some things out (not to mention looking at the source code; which brought about a rather depressing realization of it's own), I am starting to question whether going with Moodle is a smart move at all for the project which I am working on, since it would require major modifications to the core in order to implement the features I wish to use as part of the coursework I will be offering.
Again, it doesn't change much with regards to the tones expressed here since the dreadful post, but I did feel it was important to clarify that I was not attempting to imply that Moodle was not a smart move for anyone, which one could easily have assumed in the original post.
There are some things missing, not that it makes a whole lot of difference, but I do want to clarify my position.
Also, where I said
... A quick glance at the source code told me everything I would normally need to know to in order to make a decision to jump ship...
This was perhaps a poor choice of words. Again, what I meant to say, or express, was that the source code implied that Moodle WASN'T going to easily work with my requirements, and thus, I should move on to something else, or, jump ship. Again, this was a poor way to express this, and the exclusion of the last sentence in the first paragraph probably didn't help.
So, TO CLARIFY...
I never meant to say,imply, suggest, or otherwise indicate that Moodle is a BAD application. Even though I disagree with the development path and/or decisions being made (presumably) regarding Moodle's core programming, It's not really my place or concern to tell others to use, or not to use, Moodle or any other application.
That said, I do apologize to anyone who I might have offended. However, the personal attacks (and the support and encouragement of these attacks by some) were uncalled for, unprofessional and immature, not to mention libelous. For such behavior to be tolerated, especially within a community focused on educational standards, is simply unacceptable.
This will be my last word on all things Moodle. I regret having ever visited these forums, it has been a horribly miserable and insulting experience.
I will be requesting that my account here at moodle be deleted, as I have no intentions of returning to this place.
I can certainly see that if your goal is developing a programming course about the importance of using OO and MVC, then you might want to use a system that utilizes these. I can certainly see that if you use a system doesn't use OO and MVC the way you think it should, and your programming students look at the code (which they will), it could undermine your instructional goals.
First of all, I'm glad you acknowledge that your approach to the Moodle community was awkward and even confrontational, and I hope you've learned from that lesson. You obviously made some worthwhile comments, and had some important contributions to make, but your choice of words bruised the ego of some (only some, you can count how many Moodlers replied to you).
You expected a professional reply to your post. Lesson number 2: When you address a community (in an advocacy thread), you are not necessarily addressing a group of "professionals" who get paid for answering posts. In most cases you are addressing professionals who are volunteering their contributions to the project, and who feel that a part of themselves has been invested into that project. The idea of contributing of one's own free will without any obvious incentives tends to give the contributor a much stronger sense of ownership over the contributions than if s/he had been paid to make them. Add to this the fact that we are all imperfect and often slightly prideful, you may see why a different approach is required.
There are probably other lessons to learn, and one of them is for the members of the Moodle community, whose responses were mostly admirable, but some of which were definitely inappropriate and worthy of an apology. It is a hallmark of mature and wise community members to avoid making personal attacks when defending a point of view. Not only does it fuel anger and bitterness, it also has the opposite effect than that intended: it damages the community you are trying to defend. Sometimes it only takes one post to seriously and negatively affect the opinion of a person trying to become familiar with a new community.
Also remember that our community is growing, and we want that growth. However, every new member starts off knowing very little, and starts as a member of many other groups, some of which may seem as contenders with our own (such as Blackboard for lack of a better example). No one will decide to join the Moodle community unless they have a good opinion of its members, regardless of how good the product is. An "us against them" attitude should give place for a more welcoming, tolerant (but not permissive) and inclusive attitude.
The fact is. we can't separate the Moodle community from the Moodle code. They are interdependent.
> from the Moodle code. They are interdependent.
Why is it better from my perspective as university faculty? First, easy interface for both students and teacher; second, the learning curve is extremely short and intuitive, with outstanding resources and functionality; Thirdly, from moodle 1.5 on, it matches, or bests, the institute standard CMS here at Rochester Institute of Technology, which is currently Desire2Learn. I consider myself fairly competent with both systems, and my first impression of moodle endures today.
Simply, moodlea superior product in areas I find critical for managing and exchanging course content, and--more importantly--in providing a dynamic environment of opportunities for significant learning experiences.
Finally, I'm very thankful for those more program savvy who continue to add quality to moodle. I also appreciate the moodle community whose primary motivation is not profit motivated. Keep up the good work!
_MY_ First Impressions of Moodle:
I read about Moodle a few years ago and thought it was a great idea. But being a busy high school teacher, I never quite got down to taking it for a test drive. BTW I teach web design, graphic arts and video - highly computer oriented subjects. This past September I bit the bullet and decided to try it after learning a content management system the previous year, I figured it was time to add a LMS to my skills bank.
I was very happy with Moodle and continued to like it after the "second date". At this point in the year I wonder how I ever taught my courses wihout it.
Frankly, I don't care how pretty it is, or what language was used to build it. It works for me and my students. And their parents seem really happy with it too. That's the bottom line. Thanks to all who have had a hand in building Moodle.
The code is a total mess.
I'd rather kill myself than add a custom page(that includes a form),
you have to manually include header footer etc etc including security and roles.
Speaking as a software engineer.
I do admire the old-timers who reply so politely and helpfully to grumpy newcomers.
Have a very nice day, Michael, and you too Ermal.
I've seen nothing to date yet that has ever prevented me from using MVC OO-style within Moodle. I'm doing that all the time, creating base classes with necessary libraries imported and there we go!
One entry point, authorisation and everything within the base classes and there you go creating a three-tier application.
People, be creative and think out of the box!
Moodle is a good companion!