SlideShare une entreprise Scribd logo
1  sur  47
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions




                    Mahara - Putting thought into ePortfolios

                            Penny Leach <penny@catalyst.net.nz>


                                             OSCON 2007




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions




            What is all this?
       1
             Who is Penny?
             And what is this ePortfolio thing anyway?


            Mahara project
       2
             History
             Project set up
             Evaluation




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions




            Mahara System
       3
             Core Framework
             Roadmap

            Code and Architecture
       4
             Development process
             Platform
             Modularity

            Demo and Questions
       5
             Demo
             Questions


Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Who is Penny?




            What is all this?
       1
             Who is Penny?
             And what is this ePortfolio thing anyway?

            Mahara project
       2


            Mahara System
       3


            Code and Architecture
       4


            Demo and Questions
       5



Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Who is Penny?


Who is Penny?

            • One of the lead Mahara developers
            • Moodle developer for 3 years
                • What is Moodle?
            • Catalyst IT
                • New Zealand’s biggest open source provider
                • Moodle partner
                • Run some of NZ’s core infrastructure on Open Source
            • Wellington, New Zealand




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Who is Penny?


Who is Penny?

            • One of the lead Mahara developers
            • Moodle developer for 3 years
                • What is Moodle?
            • Catalyst IT
                • New Zealand’s biggest open source provider
                • Moodle partner
                • Run some of NZ’s core infrastructure on Open Source
            • Wellington, New Zealand
                • Not part of Australia!




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Who is Penny?


Who is Penny?

            • One of the lead Mahara developers
            • Moodle developer for 3 years
                • What is Moodle?
            • Catalyst IT
                • New Zealand’s biggest open source provider
                • Moodle partner
                • Run some of NZ’s core infrastructure on Open Source
            • Wellington, New Zealand
                • Not part of Australia!
            • The daughter of FOSS



Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Who is Penny?


Who is Penny?

            • One of the lead Mahara developers
            • Moodle developer for 3 years
                • What is Moodle?
            • Catalyst IT
                • New Zealand’s biggest open source provider
                • Moodle partner
                • Run some of NZ’s core infrastructure on Open Source
            • Wellington, New Zealand
                • Not part of Australia!
            • The daughter of Foss
                • seriously!


Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



And what is this ePortfolio thing anyway?


The Wikipedia definition...



        An electronic portfolio, also known as an e-portfolio or digital
        portfolio, is a collection of electronic evidence assembled and
        managed by a user, usually on the Web.
            • And it has a whole lot more to say about the matter too




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



And what is this ePortfolio thing anyway?


The Wikipedia definition...



        An electronic portfolio, also known as an e-portfolio or digital
        portfolio, is a collection of electronic evidence assembled and
        managed by a user, usually on the Web.
            • And it has a whole lot more to say about the matter too
            • But I don’t like reading definitions...




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



And what is this ePortfolio thing anyway?


Untangle the jargon


            • Student driven environment
            • Collection of pieces of evidence of learning, or ’artefacts’




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



And what is this ePortfolio thing anyway?


Untangle the jargon


            • Student driven environment
            • Collection of pieces of evidence of learning, or ’artefacts’
                • What is an artefact?




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



And what is this ePortfolio thing anyway?


Untangle the jargon


            • Student driven environment
            • Collection of pieces of evidence of learning, or ’artefacts’
                • What is an artefact?
                • Well, anything really




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



And what is this ePortfolio thing anyway?


Untangle the jargon


            • Student driven environment
            • Collection of pieces of evidence of learning, or ’artefacts’
                • What is an artefact?
                • Well, anything really
                • And apparently spelt differently in New Zealand.




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



And what is this ePortfolio thing anyway?


Untangle the jargon


            • Student driven environment
            • Collection of pieces of evidence of learning, or ’artefacts’
                • What is an artefact?
                • Well, anything really
                • And apparently spelt differently in New Zealand.
            • Display different combination of artefacts to different
                groups
            • Access controlled by the learner




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



History




              What is all this?
          1


              Mahara project
          2
               History
               Project set up
               Evaluation

              Mahara System
          3


              Code and Architecture
          4


              Demo and Questions
          5


Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



History


FOSS in eLearning in New Zealand


            • Tertiary Education Commission
            • eLearning Collaborative Development Fund
            • New Zealand Open Source Virtual Learning Environment
                • Moodle
                • Eduforge.org
                • Research and Learning Object Repositories
                • Work on Elgg, another Open Source ePortfolio




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



History


Eye candy - before and after NZVLE




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Project set up


Who? The usual suspects...

            • Funded by the eLearning Collaborative Development Fund
            • 4 Consortium partners, led by Massey University
                • Steering committee of 13 members
            • Case study partners
                • Consortium partners
                • 2 extra tertiaries
            • Catalyst IT Technology Provider
                • 4-5 developers
                • 1 graphic designer
                • 1 quality assurer



Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Project set up


What? Project deliverables...


            • Generate a theoretical framework for student ePortfolios
            • Develop an open source ePortfolio application
            • Facilitate a series of case studies
            • Create documentation for implementation stategies, user
                 guides and suggested policies.
            • Establish an open source community of interest for further
                 development




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Project set up


What? Project deliverables...


            • Generate a theoretical framework for student ePortfolios
            • Develop an open source ePortfolio application
            • Facilitate a series of case studies
            • Create documentation for implementation stategies, user
                 guides and suggested policies.
            • Establish an open source community of interest for further
                 development
            • So, not just a software project



Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Evaluation


Finding a starting point...


             • Mostly done by the Consortium
                • Catalyst providing technical guidance
             • Builds on NZVLE work
             • Elgg, OSP (Sakai), LiveJournal
             • Not good enough feature fit
                 • Or agreement about architecture




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Evaluation


Finding a starting point...


             • Mostly done by the Consortium
                • Catalyst providing technical guidance
             • Builds on NZVLE work
             • Elgg, OSP (Sakai), LiveJournal
             • Not good enough feature fit
                 • Or agreement about architecture
             • No clear leader in the running




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Evaluation


Finding a starting point...


             • Mostly done by the Consortium
                • Catalyst providing technical guidance
             • Builds on NZVLE work
             • Elgg, OSP (Sakai), LiveJournal
             • Not good enough feature fit
                 • Or agreement about architecture
             • No clear leader in the running
             • Decision to write from scratch and GPL it



Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Evaluation


And of course...



             • We wanted to name it!
                • Mah-hah-rah (verb)
                • to think, thinking, thought
                              ¯
                • Te Reo Maori
                • Kudos to New Zealand!




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Core Framework




            What is all this?
       1


            Mahara project
       2


            Mahara System
       3
             Core Framework
             Roadmap

            Code and Architecture
       4


            Demo and Questions
       5



Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Core Framework


Feature Goals

            • Student controlled environment
            • (Can be) institution agnostic
            • Artefacts/views/templates/access
                • Remember, an artefact can be anything
                • A view is a collection of artefacts
                • A template is how this is displayed
                • And access is who gets to see it.




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Core Framework


Feature Goals

            • Student controlled environment
            • (Can be) institution agnostic
            • Artefacts/views/templates/access
                • Remember, an artefact can be anything
                • A view is a collection of artefacts
                • A template is how this is displayed
                • And access is who gets to see it.
            • Initial focus: artefact/view creation
            • Later:
                 • import/export entire student portfolio
                 • communities/social networking
                 • Interoperability (especially with Moodle)

Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Core Framework


Artefact/View/Template/Access




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Core Framework


Artefact/View/Template/Access




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Core Framework


Access types

            • Public
            • Logged in
            • Friends only
            • Per access group
            • Per community
            • Per tutors in ’course’ community
            • Per user
            • Roadmap: Invited user with one off key



Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Roadmap


Roadmap


            • 0.8
                    • Institutional backup and restore
                    • Stage 1 Moodle integration
            • 0.9 - 1.0
                • Non-account, restricted access for potential employers
                • Site configurable metadata
                • Improved reporting
                • Further Moodle integration
            • ... and so on (http://mahara.org/roadmap)



Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Roadmap


Integration with Moodle

            • Stage 1
                • Single Sign On and account transferral
                • Builds on top of Moodle Networks Project




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Roadmap


Integration with Moodle

            • Stage 1
                • Single Sign On and account transferral
                • Builds on top of Moodle Networks Project
            • Stage 2
                • Portfolio API in Moodle
                • Students can ’export to portfolio’
                            • Any bit of Moodle content could be an artefact in Mahara
                    • Mahara is Learning Management System agnostic
                    • Moodle is ePortfolio System agnostic




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Roadmap


Integration with Moodle

            • Stage 1
                • Single Sign On and account transferral
                • Builds on top of Moodle Networks Project
            • Stage 2
                • Portfolio API in Moodle
                • Students can ’export to portfolio’
                            • Any bit of Moodle content could be an artefact in Mahara
                    • Mahara is Learning Management System agnostic
                    • Moodle is ePortfolio System agnostic
            • Stage 3 and beyond
                • Start building more artefact plugins in Mahara
                • Smarter understanding of incoming artefacts

Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Development process




            What is all this?
       1


            Mahara project
       2


            Mahara System
       3


            Code and Architecture
       4
             Development process
             Platform
             Modularity

            Demo and Questions
       5


Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Development process


Development process


            • Rapid initial development process (3 months)
            • Mitigation of write-from-scratch decision
                • Reuse code where possible
                        • adodb, xmldb, pieforms, mochikit
                    • Reuse not just code, but lessons too
                        • ease of adoption, ease of customisation, community
                    • Open development cycle
                        • public functional specification, wikis, source control




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Platform


Platform

            • Linux, Apache, PHP5, PostgreSQL 8.1
                 • 0.8 will have MySQL5 support
                 • adodb/xmldb so maybe more later
            • All developers run it differently
                 • inside/outside chroot
                 • inside/outside subdirectory
                 • with/without database prefixes
            • And we use Debian, so
                 • Developed against Etch
                 • Debian packaged for our releases
                 • so http://debian.mahara.org as well.


Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System     Code and Architecture   Demo and Questions



Platform


We want this to scale

                                                            • Plan early for world
                                                              domination




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System     Code and Architecture   Demo and Questions



Platform


We want this to scale

                                                            • Plan early for world
                                                              domination
                                                            • Success!




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Modularity


Modularity



             • Plugins where possible
                 • artefact, auth, notification, search
             • Always ’internal’ plugin
             • Basic entry points, then left alone
             • Register interest in cron and events at installation/upgrade




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Modularity


Artefact API



             • Each artefact plugin ’provides’ n artefact ’types’
                 • Internal - profile fields, user icons
                 • Blog - blog, blog post
                 • File - folder, file, image
                            ´
                 • Resume - cover letter, education and employment history,
                   skills, goals etc




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Modularity


Artefact API - entry points

        • Install/upgrade
        • Menu items
        • Artefact tree
        • Config page
        • Rendering inside views




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Modularity


Other plugin types


             • Notification
                 • internal (in-browser activity log), email, email digest
             • Authentication
                 • internal (against Mahara database), imap, xmlrpc
             • Search
                 • internal (sql), solr
             • Sort of but not really: languages, themes




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Demo




            What is all this?
       1


            Mahara project
       2


            Mahara System
       3


            Code and Architecture
       4


            Demo and Questions
       5
             Demo
             Questions


Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Demo


Demo




            • http://demo.mahara.org




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios
What is all this?         Mahara project    Mahara System   Code and Architecture   Demo and Questions



Questions


Questions?



        • Questions?
        • penny@catalyst.net.nz
        • http://catalyst.net.nz
        • http://mahara.org
        • http://eduforge.org/projects/mahara
        • #mahara on freenode




Penny Leach <penny@catalyst.net.nz>
Mahara - Putting thought into ePortfolios

Contenu connexe

Similaire à Os Pennyleach

01 internet peering-workshop-agenda
01 internet peering-workshop-agenda01 internet peering-workshop-agenda
01 internet peering-workshop-agenda
William Norton
 
Data science-retreat-how it works plus advice for upcoming data scientists
Data science-retreat-how it works plus advice for upcoming data scientistsData science-retreat-how it works plus advice for upcoming data scientists
Data science-retreat-how it works plus advice for upcoming data scientists
Jose Quesada
 

Similaire à Os Pennyleach (20)

JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...
JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...
JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...
 
Open source at PayPal
Open source at PayPalOpen source at PayPal
Open source at PayPal
 
Using Open Source to Drive Better Technology and Culture at PayPal
Using Open Source to Drive Better Technology and Culture at PayPalUsing Open Source to Drive Better Technology and Culture at PayPal
Using Open Source to Drive Better Technology and Culture at PayPal
 
Intro to Python Data Analysis in Wakari
Intro to Python Data Analysis in WakariIntro to Python Data Analysis in Wakari
Intro to Python Data Analysis in Wakari
 
01 internet peering-workshop-agenda
01 internet peering-workshop-agenda01 internet peering-workshop-agenda
01 internet peering-workshop-agenda
 
Intro to Chainlink x Encode
Intro to Chainlink x EncodeIntro to Chainlink x Encode
Intro to Chainlink x Encode
 
Webinar - Digital Skills for Older Adults: Teaching Technology in Public Libr...
Webinar - Digital Skills for Older Adults: Teaching Technology in Public Libr...Webinar - Digital Skills for Older Adults: Teaching Technology in Public Libr...
Webinar - Digital Skills for Older Adults: Teaching Technology in Public Libr...
 
8 better ways of doing your engineering project
8 better ways of doing your engineering project8 better ways of doing your engineering project
8 better ways of doing your engineering project
 
Data wrangling week1
Data wrangling week1Data wrangling week1
Data wrangling week1
 
IDNOG - 2014
IDNOG - 2014IDNOG - 2014
IDNOG - 2014
 
Data-X-Sparse-v2
Data-X-Sparse-v2Data-X-Sparse-v2
Data-X-Sparse-v2
 
Data-X-v3.1
Data-X-v3.1Data-X-v3.1
Data-X-v3.1
 
Data Structures and Algorithm - Week 4 - Trees, Binary Trees
Data Structures and Algorithm - Week 4 - Trees, Binary TreesData Structures and Algorithm - Week 4 - Trees, Binary Trees
Data Structures and Algorithm - Week 4 - Trees, Binary Trees
 
Acec2014 RALfieProject
Acec2014 RALfieProjectAcec2014 RALfieProject
Acec2014 RALfieProject
 
How to write a web framework
How to write a web frameworkHow to write a web framework
How to write a web framework
 
01 (IDNOG01) Keynote 1 by Barry Greene
01 (IDNOG01) Keynote 1 by Barry Greene01 (IDNOG01) Keynote 1 by Barry Greene
01 (IDNOG01) Keynote 1 by Barry Greene
 
Semantic Web Technologies: Principles and Practices
Semantic Web Technologies: Principles and PracticesSemantic Web Technologies: Principles and Practices
Semantic Web Technologies: Principles and Practices
 
Stacked Ensembles in H2O
Stacked Ensembles in H2OStacked Ensembles in H2O
Stacked Ensembles in H2O
 
Community and Code: Lessons from NESCent Hackathons
Community and Code: Lessons from NESCent HackathonsCommunity and Code: Lessons from NESCent Hackathons
Community and Code: Lessons from NESCent Hackathons
 
Data science-retreat-how it works plus advice for upcoming data scientists
Data science-retreat-how it works plus advice for upcoming data scientistsData science-retreat-how it works plus advice for upcoming data scientists
Data science-retreat-how it works plus advice for upcoming data scientists
 

Plus de oscon2007

J Ruby Whirlwind Tour
J Ruby Whirlwind TourJ Ruby Whirlwind Tour
J Ruby Whirlwind Tour
oscon2007
 
Solr Presentation5
Solr Presentation5Solr Presentation5
Solr Presentation5
oscon2007
 
Os Fitzpatrick Sussman Wiifm
Os Fitzpatrick Sussman WiifmOs Fitzpatrick Sussman Wiifm
Os Fitzpatrick Sussman Wiifm
oscon2007
 
Performance Whack A Mole
Performance Whack A MolePerformance Whack A Mole
Performance Whack A Mole
oscon2007
 
Os Lanphier Brashears
Os Lanphier BrashearsOs Lanphier Brashears
Os Lanphier Brashears
oscon2007
 
Os Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman SwpOs Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman Swp
oscon2007
 
Os Berlin Dispelling Myths
Os Berlin Dispelling MythsOs Berlin Dispelling Myths
Os Berlin Dispelling Myths
oscon2007
 
Os Keysholistic
Os KeysholisticOs Keysholistic
Os Keysholistic
oscon2007
 
Os Jonphillips
Os JonphillipsOs Jonphillips
Os Jonphillips
oscon2007
 
Os Urnerupdated
Os UrnerupdatedOs Urnerupdated
Os Urnerupdated
oscon2007
 

Plus de oscon2007 (20)

J Ruby Whirlwind Tour
J Ruby Whirlwind TourJ Ruby Whirlwind Tour
J Ruby Whirlwind Tour
 
Solr Presentation5
Solr Presentation5Solr Presentation5
Solr Presentation5
 
Os Borger
Os BorgerOs Borger
Os Borger
 
Os Harkins
Os HarkinsOs Harkins
Os Harkins
 
Os Fitzpatrick Sussman Wiifm
Os Fitzpatrick Sussman WiifmOs Fitzpatrick Sussman Wiifm
Os Fitzpatrick Sussman Wiifm
 
Os Bunce
Os BunceOs Bunce
Os Bunce
 
Yuicss R7
Yuicss R7Yuicss R7
Yuicss R7
 
Performance Whack A Mole
Performance Whack A MolePerformance Whack A Mole
Performance Whack A Mole
 
Os Fogel
Os FogelOs Fogel
Os Fogel
 
Os Lanphier Brashears
Os Lanphier BrashearsOs Lanphier Brashears
Os Lanphier Brashears
 
Os Tucker
Os TuckerOs Tucker
Os Tucker
 
Os Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman SwpOs Fitzpatrick Sussman Swp
Os Fitzpatrick Sussman Swp
 
Os Furlong
Os FurlongOs Furlong
Os Furlong
 
Os Berlin Dispelling Myths
Os Berlin Dispelling MythsOs Berlin Dispelling Myths
Os Berlin Dispelling Myths
 
Os Kimsal
Os KimsalOs Kimsal
Os Kimsal
 
Os Pruett
Os PruettOs Pruett
Os Pruett
 
Os Alrubaie
Os AlrubaieOs Alrubaie
Os Alrubaie
 
Os Keysholistic
Os KeysholisticOs Keysholistic
Os Keysholistic
 
Os Jonphillips
Os JonphillipsOs Jonphillips
Os Jonphillips
 
Os Urnerupdated
Os UrnerupdatedOs Urnerupdated
Os Urnerupdated
 

Dernier

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Dernier (20)

Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

Os Pennyleach

  • 1. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Mahara - Putting thought into ePortfolios Penny Leach <penny@catalyst.net.nz> OSCON 2007 Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 2. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions What is all this? 1 Who is Penny? And what is this ePortfolio thing anyway? Mahara project 2 History Project set up Evaluation Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 3. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Mahara System 3 Core Framework Roadmap Code and Architecture 4 Development process Platform Modularity Demo and Questions 5 Demo Questions Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 4. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Who is Penny? What is all this? 1 Who is Penny? And what is this ePortfolio thing anyway? Mahara project 2 Mahara System 3 Code and Architecture 4 Demo and Questions 5 Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 5. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Who is Penny? Who is Penny? • One of the lead Mahara developers • Moodle developer for 3 years • What is Moodle? • Catalyst IT • New Zealand’s biggest open source provider • Moodle partner • Run some of NZ’s core infrastructure on Open Source • Wellington, New Zealand Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 6. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Who is Penny? Who is Penny? • One of the lead Mahara developers • Moodle developer for 3 years • What is Moodle? • Catalyst IT • New Zealand’s biggest open source provider • Moodle partner • Run some of NZ’s core infrastructure on Open Source • Wellington, New Zealand • Not part of Australia! Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 7. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Who is Penny? Who is Penny? • One of the lead Mahara developers • Moodle developer for 3 years • What is Moodle? • Catalyst IT • New Zealand’s biggest open source provider • Moodle partner • Run some of NZ’s core infrastructure on Open Source • Wellington, New Zealand • Not part of Australia! • The daughter of FOSS Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 8. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Who is Penny? Who is Penny? • One of the lead Mahara developers • Moodle developer for 3 years • What is Moodle? • Catalyst IT • New Zealand’s biggest open source provider • Moodle partner • Run some of NZ’s core infrastructure on Open Source • Wellington, New Zealand • Not part of Australia! • The daughter of Foss • seriously! Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 9. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions And what is this ePortfolio thing anyway? The Wikipedia definition... An electronic portfolio, also known as an e-portfolio or digital portfolio, is a collection of electronic evidence assembled and managed by a user, usually on the Web. • And it has a whole lot more to say about the matter too Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 10. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions And what is this ePortfolio thing anyway? The Wikipedia definition... An electronic portfolio, also known as an e-portfolio or digital portfolio, is a collection of electronic evidence assembled and managed by a user, usually on the Web. • And it has a whole lot more to say about the matter too • But I don’t like reading definitions... Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 11. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions And what is this ePortfolio thing anyway? Untangle the jargon • Student driven environment • Collection of pieces of evidence of learning, or ’artefacts’ Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 12. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions And what is this ePortfolio thing anyway? Untangle the jargon • Student driven environment • Collection of pieces of evidence of learning, or ’artefacts’ • What is an artefact? Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 13. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions And what is this ePortfolio thing anyway? Untangle the jargon • Student driven environment • Collection of pieces of evidence of learning, or ’artefacts’ • What is an artefact? • Well, anything really Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 14. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions And what is this ePortfolio thing anyway? Untangle the jargon • Student driven environment • Collection of pieces of evidence of learning, or ’artefacts’ • What is an artefact? • Well, anything really • And apparently spelt differently in New Zealand. Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 15. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions And what is this ePortfolio thing anyway? Untangle the jargon • Student driven environment • Collection of pieces of evidence of learning, or ’artefacts’ • What is an artefact? • Well, anything really • And apparently spelt differently in New Zealand. • Display different combination of artefacts to different groups • Access controlled by the learner Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 16. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions History What is all this? 1 Mahara project 2 History Project set up Evaluation Mahara System 3 Code and Architecture 4 Demo and Questions 5 Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 17. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions History FOSS in eLearning in New Zealand • Tertiary Education Commission • eLearning Collaborative Development Fund • New Zealand Open Source Virtual Learning Environment • Moodle • Eduforge.org • Research and Learning Object Repositories • Work on Elgg, another Open Source ePortfolio Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 18. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions History Eye candy - before and after NZVLE Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 19. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Project set up Who? The usual suspects... • Funded by the eLearning Collaborative Development Fund • 4 Consortium partners, led by Massey University • Steering committee of 13 members • Case study partners • Consortium partners • 2 extra tertiaries • Catalyst IT Technology Provider • 4-5 developers • 1 graphic designer • 1 quality assurer Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 20. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Project set up What? Project deliverables... • Generate a theoretical framework for student ePortfolios • Develop an open source ePortfolio application • Facilitate a series of case studies • Create documentation for implementation stategies, user guides and suggested policies. • Establish an open source community of interest for further development Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 21. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Project set up What? Project deliverables... • Generate a theoretical framework for student ePortfolios • Develop an open source ePortfolio application • Facilitate a series of case studies • Create documentation for implementation stategies, user guides and suggested policies. • Establish an open source community of interest for further development • So, not just a software project Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 22. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Evaluation Finding a starting point... • Mostly done by the Consortium • Catalyst providing technical guidance • Builds on NZVLE work • Elgg, OSP (Sakai), LiveJournal • Not good enough feature fit • Or agreement about architecture Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 23. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Evaluation Finding a starting point... • Mostly done by the Consortium • Catalyst providing technical guidance • Builds on NZVLE work • Elgg, OSP (Sakai), LiveJournal • Not good enough feature fit • Or agreement about architecture • No clear leader in the running Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 24. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Evaluation Finding a starting point... • Mostly done by the Consortium • Catalyst providing technical guidance • Builds on NZVLE work • Elgg, OSP (Sakai), LiveJournal • Not good enough feature fit • Or agreement about architecture • No clear leader in the running • Decision to write from scratch and GPL it Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 25. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Evaluation And of course... • We wanted to name it! • Mah-hah-rah (verb) • to think, thinking, thought ¯ • Te Reo Maori • Kudos to New Zealand! Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 26. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Core Framework What is all this? 1 Mahara project 2 Mahara System 3 Core Framework Roadmap Code and Architecture 4 Demo and Questions 5 Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 27. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Core Framework Feature Goals • Student controlled environment • (Can be) institution agnostic • Artefacts/views/templates/access • Remember, an artefact can be anything • A view is a collection of artefacts • A template is how this is displayed • And access is who gets to see it. Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 28. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Core Framework Feature Goals • Student controlled environment • (Can be) institution agnostic • Artefacts/views/templates/access • Remember, an artefact can be anything • A view is a collection of artefacts • A template is how this is displayed • And access is who gets to see it. • Initial focus: artefact/view creation • Later: • import/export entire student portfolio • communities/social networking • Interoperability (especially with Moodle) Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 29. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Core Framework Artefact/View/Template/Access Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 30. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Core Framework Artefact/View/Template/Access Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 31. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Core Framework Access types • Public • Logged in • Friends only • Per access group • Per community • Per tutors in ’course’ community • Per user • Roadmap: Invited user with one off key Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 32. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Roadmap Roadmap • 0.8 • Institutional backup and restore • Stage 1 Moodle integration • 0.9 - 1.0 • Non-account, restricted access for potential employers • Site configurable metadata • Improved reporting • Further Moodle integration • ... and so on (http://mahara.org/roadmap) Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 33. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Roadmap Integration with Moodle • Stage 1 • Single Sign On and account transferral • Builds on top of Moodle Networks Project Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 34. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Roadmap Integration with Moodle • Stage 1 • Single Sign On and account transferral • Builds on top of Moodle Networks Project • Stage 2 • Portfolio API in Moodle • Students can ’export to portfolio’ • Any bit of Moodle content could be an artefact in Mahara • Mahara is Learning Management System agnostic • Moodle is ePortfolio System agnostic Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 35. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Roadmap Integration with Moodle • Stage 1 • Single Sign On and account transferral • Builds on top of Moodle Networks Project • Stage 2 • Portfolio API in Moodle • Students can ’export to portfolio’ • Any bit of Moodle content could be an artefact in Mahara • Mahara is Learning Management System agnostic • Moodle is ePortfolio System agnostic • Stage 3 and beyond • Start building more artefact plugins in Mahara • Smarter understanding of incoming artefacts Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 36. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Development process What is all this? 1 Mahara project 2 Mahara System 3 Code and Architecture 4 Development process Platform Modularity Demo and Questions 5 Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 37. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Development process Development process • Rapid initial development process (3 months) • Mitigation of write-from-scratch decision • Reuse code where possible • adodb, xmldb, pieforms, mochikit • Reuse not just code, but lessons too • ease of adoption, ease of customisation, community • Open development cycle • public functional specification, wikis, source control Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 38. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Platform Platform • Linux, Apache, PHP5, PostgreSQL 8.1 • 0.8 will have MySQL5 support • adodb/xmldb so maybe more later • All developers run it differently • inside/outside chroot • inside/outside subdirectory • with/without database prefixes • And we use Debian, so • Developed against Etch • Debian packaged for our releases • so http://debian.mahara.org as well. Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 39. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Platform We want this to scale • Plan early for world domination Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 40. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Platform We want this to scale • Plan early for world domination • Success! Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 41. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Modularity Modularity • Plugins where possible • artefact, auth, notification, search • Always ’internal’ plugin • Basic entry points, then left alone • Register interest in cron and events at installation/upgrade Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 42. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Modularity Artefact API • Each artefact plugin ’provides’ n artefact ’types’ • Internal - profile fields, user icons • Blog - blog, blog post • File - folder, file, image ´ • Resume - cover letter, education and employment history, skills, goals etc Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 43. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Modularity Artefact API - entry points • Install/upgrade • Menu items • Artefact tree • Config page • Rendering inside views Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 44. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Modularity Other plugin types • Notification • internal (in-browser activity log), email, email digest • Authentication • internal (against Mahara database), imap, xmlrpc • Search • internal (sql), solr • Sort of but not really: languages, themes Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 45. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Demo What is all this? 1 Mahara project 2 Mahara System 3 Code and Architecture 4 Demo and Questions 5 Demo Questions Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 46. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Demo Demo • http://demo.mahara.org Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios
  • 47. What is all this? Mahara project Mahara System Code and Architecture Demo and Questions Questions Questions? • Questions? • penny@catalyst.net.nz • http://catalyst.net.nz • http://mahara.org • http://eduforge.org/projects/mahara • #mahara on freenode Penny Leach <penny@catalyst.net.nz> Mahara - Putting thought into ePortfolios