Moodle Development Why work with Moodle? What skills are required. Strategies for building up the Moodle development community in Thailand.

Slides:



Advertisements
Similar presentations
Introducing… elementool Issue Tracking The World’s First Web-Based Issue Tracking Software.
Advertisements

Easy, like an attachment. But can your doc stand on its own? Yes. Only teachers can upload files to course site. So definitely a push- tool. Maybe.
MOODLE TRAINEE ORIENTATION Prepared by: Keisha McKenzie USING HEART’S MOOLE SITE Let’s Get Started! Let’s Get Started!
July 2010 D2.1 Upgrading strategy Javier Soto Catalog Release 3. Communities.
Seattle Drupal Clinic Introduction to Drupal and Web Content Management.
Easy Website Creation Using WordPress Welcome and Thank You to our Sponsors.
Moodle Training for Course Creators Michelle Moore Kathie Robeson.
Objectives Moodle is an online learning environment where instructors & their students interact. In this workshop you will learn: 1.Configure system requirements.
Drupal Create a website/web app quickly with this Content Management System Jiaying Xu Spring 2011 COMS E6125 Web-enHanced Information.
Introduction to Web Application Architectures Web Application Architectures 18 th March 2005 Bogdan L. Vrusias
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
UWWD In our quest to eliminate bad websites, we present…. HALLELUJAH!!
Professional Development Training. The Big Picture The Hermes Model – Slide 3 Your Role as an On-Site Facilitator – Slide 4 What is Asynchronous Learning?
A Standard Problem Buy, build, or share? Nothing new here - ranges from ERP systems to instructional applications Buy – commercial product Build – local.
Internet Research Finding Free and Fee-based Obituaries Online.
Build a CMS Website. The topics this chapter covers are: What is CMS ? What you can do with CMS The benefits and disadvantages of using a content management.
Learning Management Systems. students faculty content.
Drupal Workshop Introduction to Drupal Part 1: Web Content Management, Advantages/Disadvantages of Drupal, Drupal terminology, Drupal technology, directories.
+ Connecting to the Web Week 7, Lecture A. + Midterm Basics Thursday February 28 during Class The lab Tuesday, February 26 is optional review Class on.
John Hartley Mark Bransby Utilizing Adobe's Publishing Solutions for Distributed Web Publishing.
Web 2.0: Concepts and Applications 2 Publishing Online.
Content Management Systems Equals Distributed Web Site Maintenance Robert Gulick, EdD DBA / Technology Trainer Carmi Gulick.
10 June 2010 State Stats: Refreshing Reference With Drupal AJ Million, MoDOT Transportation Library.
Best Practices in Moodle Administration Best Practices in Moodle Administration A variety of topics from technical to practical Jonathan Moore Vice President.
Moodle: using an open learning management system to support student learning Keith Landa Purchase College
Institute of New Media Development & Research Prabhat Road, Lane No 5, Opp. Lijit Papad, Above OBC Bank, 1st Floor, Pune Web site :
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
Drupal Training Syllabus Chaitanya Lakshmi
IT Introduction to Website Development Welcome!
Course review BTM 395: Internet Programming. What you have learnt in this course.
Course Management System An application that can be added to a web server to create a flexible web-based environment for creating and managing online courses.
Oracle Application Express 3.0 Joel R. Kallman Software Development Manager.
Jason G. Caudill Assistant Professor of Business Administration Carson-Newman College.
ISP 1600 for Fall 2007 Web.Edu: How Internet Courses Work Fifth meeting October 7, 2007
What is Drupal? Open Source software written in php. A CMS or content-management system. A sophisticated web application building tool.
COLD FUSION Deepak Sethi. What is it…. Cold fusion is a complete web application server mainly used for developing e-business applications. It allows.
PUBLISHING ONLINE Chapter 2. Overview Blogs and wikis are two Web 2.0 tools that allow users to publish content online Blogs function as online journals.
Presentation Outline What is a wiki? How does wiki work? Choosing a Wiki plan The educational benefits of a Wiki Wikis in higHeR eDucation Plans and Pricing.
CMU SSD7: Database Systems
Joomla An Open Source Content Management System. Scope of Workshop Definition and background of Joomla Explanation of Joomla’s abilities and strengths,
Microsoft Internet Explorer and the Internet Using Microsoft Explorer 5.
SE3183 Advance Web Programming Programming Session 2013/2014.
Updated Today's talk should help you to understand better  what your responsibilities for this module  how you will be taught  how you.
University of Illinois at Urbana-Champaign A Unified Platform for Archival Description and Access Christopher J. Prom, Christopher A. Rishel, Scott W.
Heidi Atha Diane Look Buena Vista School District.
Forensic Drupal Debugging Dan Harris daneesia on drupal.org.
QA for MIMAS A Case Study Anne McCombe MIMAS
Seattle Drupal Clinic Introduction to Drupal Part 1: Web Content Management, Advantages/Disadvantages of Drupal, Drupal terminology.
1 Information Technology Web Services Projects: Current & Future Insert Photo here.
P2Rx Web Group Fall 2003 Update. Coding Management Items covered today Topic hubs being shared Modularized Topic Hub Code CVS server (managing code) –Topic.
MEETING THE NEEDS OF THE WORKPLACE Every organisation has different needs from a course and learning management system. The flexibility and modularity.
ISP 1600 for Fall 2005 Web.Edu: How Internet Courses Work Fifth meeting October 8, 2005
WHAT IS SERVER SIDE SCRIPTING? Server-side scripting is a web server technology in which a user's request is verified by running a script directly on the.
Advanced Topics Lecture 8 Rachel A Ober
CSS THE MISSING MANUAL Introduction. Benefits of CSS Style sheets offer more formatting choices than are offered in straight HTML  EXAMPLE: When you.
May 6, 2009 Browser Compatibility Testing Definition It is a non functional type of testing where web based applications are tested on various browsers(IE.
V7 Foundation Series Vignette Education Services.
1/7/2016www.infocampus.co.in1. 1/7/2016www.infocampus.co.in2 Web Development training gives you and all-round training in both the design and the development.
Thinking of Drupal 8? Get started with the resources.
Easy, like an attachment. But can your doc stand on its own? Yes. Only teachers can upload files to course site. So definitely a push- tool. Maybe.
Agenda 1.About Me & My Approach 2.About knowplace Family of Sites 3.About Moodle 4.Skill Check of (my Priority) Moodle items: Layout,
OPEN SOURCE LEARNING MANAGEMENT SYSTEM (LMS) [PGCSE292] NAME: - INDRANIL RAKSHIT MTECH CSE NETAJI SUBHASH ENGINEERING COLLEGE.
Presentation by Giorgos Theodoridis. WordPress is a free web software you can use to create a beautiful website, blog, or app, (CMS) based on PHP and.
Blogging together 1st Vocational School - 1st Laboratory Center
Introduction and Principles
PHP / MySQL Introduction
Module 6: Preparing for RDA ...
Tonga Institute of Higher Education IT 141: Information Systems
Tonga Institute of Higher Education IT 141: Information Systems
CGS 3066: Web Programming and Design Fall 2019
Presentation transcript:

Moodle Development Why work with Moodle? What skills are required. Strategies for building up the Moodle development community in Thailand.

Advantages of Involvement with The World Wide Moodle Community Open nature of Moodle means that popular ideas are integrated into main Moodle distribution. You can influence the direction of Moodle if you have some good ideas. Due to the size and complexity of modern software projects new models are needed for us to collaborate together so that as individuals and institutions we can contribute to building the software tools we want to use. Satisfaction that your work is benefiting many people. Recognition as a contributor to Moodle can lead to institutional links with institutions around the world. International collaboration on projects. Review of your code and additions to your code. Few institutions have the resources to make an effective and popular tool. A tool that is secure, adaptable and has the functionality of Moodle.

Estimated Time / Expense to Code Moodle Equivalent Core code : 1,146,879 Lines of Code 317 Person Years at US$ 55,000 a year $17,423,701 (estimated by ohloh.net).

Contributed code Contributed code : 608,543 Lines of Code 164 Person Years $9,021,019

Opportunities Theme development – only requires knowledge of xhtml and css. Nearly every new site needs some Theme customization – lots of work. Most development work involves adapting Moodle to local needs. Varying levels of skills are needed for development of Moodle.

Skills Useful for Moodle Development - Using Web Technologies –PHP : advanced procedural / object orientated PHP 4/5. Moodle 2.0 will require PHP 5.2 Care should be taken when coding for Moodle that security vulnerabilities are not introduced. PHP scripts can sometimes be insecure. All code going into Moodle core is carefully checked for possible security holes. And any vulnerabilities reported on the internet are quickly followed up.

Skills Useful for Moodle Development - Using Web Technologies –SQL databases. Moodle uses standard SQL that is cross database compatible and a custom data management library and data definition library so that installation, upgrade of database and data manipulation (INSERT, UPDATE, SELECTs, etc) work across many sql databases. Moodle has a built in ‘XMLDB editor’ which can be used to edit the structure of the database. The editor automatically generates upgrade code and

Skills Useful for Moodle Development - Using Web Technologies –XHTML STRICT, CSS. We try to separate all styling into the CSS files and not use html attributes and tags for styling pages. Moodle is optimized for use with screen readers since Moodle 1.8. Someone developing themes should understand concepts of accessibility in web sites. –JavaScript, generally we always have a fallback for if a user doesn’t have javascript eg. for people using screenreaders. Moodle now includes the Yahoo User Interface JS library.

Skills Useful for Moodle Development - Using Server Technologies –A Moodle developer should be able to install a local server for testing their code on their operating system of choice. XAMPP is a good choice currently for Windows. –Being able to use the Linux shell can be useful if you need to administer a Moodle server and understanding Apache is useful.

Skills Useful for Moodle Development - Using Developer Tools –CVS –a php editor - vi and eclipse are the editors favored by the core Moodle developers. A good editor can really speed up development and help you explore the Moodle code. –phpMyAdmin is useful for examining the contents of databases. –The firefox extension Firebug is excellent for debugging html / css and javascript.

Skills Useful for Moodle Development Familiarity with the Moodle LMS : –A developer could have some experience using Moodle as a user or teacher. This familiarity with Moodle will help the developer to be able to fit new functionality into the system in a sensible way. –A developer should have a good understanding of the Moodle architecture and the various APIs. We have some coding guidelines here These cover General rules, Coding style, Database structures and Security issues (and handling form and URL data).

Moodle Plug Ins Activity Module Admin Report Assignment Type Authentication Method Block Course Format Course Report Database Field Database Preset Enrolment Method Filter Grade Export Grade Import Grade Report Message Processor Question Import/Export Format Question Type Quiz Report Resource Type SSO Plugin

Participation in the Moodle community Participation in discussions on Moodle.org –Although the Moodle community is unusually helpful it should be remembered that the Moodle forums are about give and take. try to solve your problem yourself rather than asking about it on the forums. Search through the forums and documentation using google or the built in search tools. If you demonstrate that you have done some work trying to work out your problem yourself and maybe leave a record on the forums of the steps you have taken which will help someone else then people are more likely to help you. Take the opportunity when you can to try to help someone else with their query when you can answer a question. You are likely to learn something yourself by participation in discussions! Post to the bug tracker when you have found a bug, not to the forums. A good way to start to be recognized as a serious developer for Moodle would be to post bug fixes as patches to the tracker. This would also be a good way to start to find your way around the Moodle code. Attend Moodle Moots and developer conferences to keep up to date with trends in Moodle development and get to know other Moodlers face to face.

Encouraging the Developer Community

Mentoring Hire experienced programmers to review development plans and code of new programmers. –This kind of on the job training is ideal, not only do you end up with a better product, when done well it can be a very effective training tool so that inexperienced programmers can quickly learn the skills of more experienced coders.

Encourage Contribution Back to the Moodle Community Give your developers time to polish their code and publish it. Encourage development of English skills amongst at least some of your developers so that they can benefit from the wealth of resources out there on the web about web development and take a full part in the international Moodle development community. Of course there is also the Thai Moodle forums.

Freelancing Allow / encourage your more experienced developers to freelance, to work on international projects? This will help to attract, retain and motivate talented individuals and will also give them a broader experience. With good use of the inexperienced members to do what they can and the more experienced staff members / freelancers to review code you can keep costs down while being able to offer competitive rates of pay to experienced members of staff.

Learning to be a Moodle Developer There is a lot of material available online on php development. There is a good deal of documentation available for different aspects of Moodle development. The code itself includes plenty of documentation as phpdoc comments.

Contact Me Web Page : Skype : jamiepratt