By the power of Plone - Case Carousel at University of Jyväskylä
1. By the Power of Plone -
Case Carousel at University of Jyväskylä
Rikupekka Oksanen
rioksane@jyu.fi
2. Who
Rikupekka Oksanen
Twitter: @rikupekka
● Plone-user/site builder/support/project manager 2004
● Web developer (HTML/CSS) 1996 ->
● Not quite a programmer
● Part of team of about 5 developers that work with Plone (or Python)
3. In the Ploneconf 2014
You might remember me from highlighting the three biggest
cases at JYU:
● www.jyu.fi - University websites
● koppa.jyu.fi - Study materials
● moniviestin.jyu.fi - Video publishing portal
Check out the video at https://vimeo.com/110364529
5. Plone Use Cases at University of Jyväskylä (JYU)
Focus on:
● Empowering users to do stuff on their own
● Creating applications without (much) coding, TTW
● The importance of a customer/user in a successful development
● Agile or lean perspectives
● Product life cycle
● Experimentation
● 10+ years of Plone usage
6. University of Jyväskylä, Finland
“A significant multi-discipline research university and an expert in
education”
https://www.jyu.fi/en/introduction
15 000 students (+ adult education students = 40 000 students)
2 600 staff members
7.
8. Public Sector Specialities (or at least our university)
● Lots of projects that come and go and the funding along them
● Lots of fixed term employees (like developers) that are hired on
project funding
● Some projects are just for “planning and figuring out”
● Projects usually have a start and an end...
… And that’s a major problem.
9. Public Sector Specialities (or at least our university)
● How to cope with systems or services that people continue to use
after the project (and funding) has ended?
● Who actually maintains them, who gives the support?
● The client or customer is often hard to find - for whom are we doing
this? The steering group or the end users?
● Or the funding is hard to find, there is a need for something but no
one seems to be responsible
But let’s get to the cases now.
11. It was 2007 or something...
● Lots of cool and “cool” stuff around
12. But back at our university someone just
wanted to make simple web forms.
13. There were some form tools at JYU
● Mr Interview, IBM, SPSS - “worked” only in IE6, so...
● Korppi surveys - home made software - were considered hard to use at cases
and were mostly tied on courses or course related surveys
14. ● Plone Form Gen
A through-the-web form generator for Plone
● https://plone.org/products/ploneformgen
● http://docs.plone.org/develop/plone/forms/ploneformgen.html
● https://pypi.python.org/pypi/Products.PloneFormGen
But we just installed Plone Form Gen
15.
16.
17.
18. Form Gen usage at JYU
● Application forms (e.g. recruitment) - this is how it actually started
● Registration to different kind of events
● Support requests
● Collecting data for study purposes
● Registration + payments
● Ordering stuff (e.g. publications)
● Ordering and selling stuff (e.g. software)
● etc.
19. JYU specials
● jyu.pfg.office
○ Display saved data in a browser, in Excel, in OpenOffice
● Save Attachments Adapter
○ Saves attachments as Plone content - this was needed in
application forms
○ Only accessible via Excel or other views
○ Simple permission management on viewing attachments
● Payments integration
○ GetPaid + customization
● Publication forms, integration with our publication repository
27. Form Gen usage at JYU
● About 800 public forms
● About 100 intranet forms
● Mostly public forms, but others require logging and can be shown only
to certain people/groups
● Thousands of responses combined in all forms
● The amount of manual work saved using forms - a lot
● 99% of forms are created by “normal” content editors, not by tech
support
28. Also about forms
● Easily copy-paste PFG forms in a site
● Export - Import forms from a site to another, even from Plone version
to another
● Mostly public forms, but some require logging in
● Form Gen uses Plone metaphors consistently - easy to learn and to
use
● Payment integration was really hard, but it paid off (pun intended)
30. Plomino cases: HATUT
https://www.jyu.fi/hatut - “Working time survey”
At December 2013 we got a sudden request to
● Create a multilingual, but really simple to use survey system
● For every staff member (2600)
● To input exact data about their daily tasks during one week of the year
● The data should be easily editable during the survey week
● Some of the other details of the system were still unknown...
32. Plomino cases: HATUT
● Problems
● We were running short of developers at the beginning of 2014
● Other projects were already planned for that time
● Every staff member already had to fill out their weekly hours to 2-3
other systems -> the rejection for another system to fill out work hours
would be there.
● Could we do this with just Plone Form Gen?
33. Plomino cases: HATUT
● Form Gen was not enough
● Asko Soukka had some idea about http://plomino.net/
● One difference between Plomino and Plone Form Gen: Plomino forms
can be re-visited and data can be edited
● Creating the first draft with Plomino was rather simple
● It gave the customer more ideas on how to modify the survey
questions
● ...It also gave them the idea to add two more surveys: background
survey and work trip survey
34. Plomino, a powerful and flexible web-based application builder.
With Plomino you can create your own custom applications in your Plone
site directly from the Plone web interface without programming.
http://plomino.net/
Plomino
36. ● Over 40 different
types of tasks.
Task types
evolved during
the development
37. Plomino cases: HATUT
● The application was actually finished by January 2014
● But the content wasn’t.
● Translations
● Instructions
● Instructional emails
● New questions, question types were invented
38. Plomino cases: HATUT
● Actual release was not until May 2014
● 50 people were selected to participate to the surveys every week
● All 2600 staff members participated during the year
● Everything worked pretty well (=no technical meltdowns, little tweaks
only) - little need for technical support
39. Other Plomino-cases too
● Kandipalaute - a feedback survey for bachelor students
○ 1 man new to Plomino, 1 day development -> finished
○ 800+ answers collected
○ Easy to use
● ERMA - a 4 year study for thousands of people at Jyväskylä
○ Some programming required
○ Huge amount of answers
● Quality manual - Formal way to submit data about our quality assurance
process.
○ This was developed by our former vice rector :)
○ He just started using it, and later showed us what he’d done
○ Lots of templates, views and customization
40.
41. Here is a plomino form for an
admin
(it goes without the green bar or
left portlets for the users)
45. Dexterity
● https://plone.org/products/dexterity
● Dexterity offers:
○ The ability to create new content types through-the-web
○ The ability to switch on/off various aspects (called
"behaviors") on a per-type basis
○ Improved collaboration between integrators (who may define
a type's schema, say) and programmers (who may provide
re-usable behaviors that the administrator can plug in).
46. ● Sivuaineet-portal delivers information about minor subjects that
are available at University of Jyväskylä
It was a warm summer of 2013 when we got a request...
Dexterity content types (Sivuaineet)
47. ● The aim was to make system that
○ Shows all available minors at one place instead of rippled into all
different faculty sites
○ Content is presented in a visually pleasing way (not just text)
○ Content is easy to add and edit
○ Content should be future-proof - combinable with national system
that is coming
○ Permissions and organizational structure should work in the
background
Dexterity content types (Sivuaineet)
48. ● Challenges:
○ Possible resistance to change - new system again
○ Some of the details were still vague
○ Programmers were bound to other projects… so we needed a
solution that “anyone” could do
Enter dexterity
Dexterity content types (Sivuaineet)
51. ● Same basic
information for every
object
● Description, work life
benefits, application
time, additional info
● Application time: at
first it was simple
datetime, but reality
showed that it
cannot be used in
every subject
52. This is how the content editors
see the minors
Looks a lot like normal Plone
page
String fields, selection fields,
text fields etc.
Mandatory fields are shown
Some validation offered
54. ● Well, still needed some custom templates to change the layout
-> Wish we could have had something like mosaic back then :)
● Little programming was needed to make sure new content types appear in the
indexes for faceted navigation
● But in the end this was a pretty successful way of delivering value to the users
and to demonstrate things to users
● Quick feedback-improvement loop and working software
Dexterity content types (Sivuaineet)
56. Journal Review Systems Face-off
Two systems for submitting and reviewing scientific articles.
Communications of the Cloud Software
http://www.cloudsw.org/
Human Technology Journal Review System
https://humantechnologypublishing.jyu.fi/
57. Basic requirements on both systems
● Submit documents
● Review workflow
● Comments
● Register and manage users
● Permission management
-> Enter Plone here
62. ● cloudsw.org took about 2 times 2 weeks to develop
● First version had some core features, the customer started to use the system
and documented issues that appeared
● Second version dealt with those issues
Cloudsw.org
63.
64. ● The aim was to replace old email-only review process
● Cloudsw.org process was not suitable
● Humantech version 1 was first developed for Plone 3 in 2010-2011 or
something
● The customer wasn’t too happy with the pilot, but they got their requirements
gathered, some 150 feature tickets
● 2012 we started to develop new Humantech for Plone 4.
● 2-4 months was the guess… estimate.
Humantech Requirements
67. ● In 2014 there were over 400 lines of requirements in “the Bible”
● It had taken way over the guestimated 4 months (and the sponsor calculated
time in years from 2010)
● We tried some agile mumbo jumbo with “how about releasing a part of it and
just start using it, like the submission form first”
● But the customer wanted “one big release with all the features in it”
● The features and the scope changed all the time
Humantech Development
68.
69. ● January 2014 he sponsor/manager (who actually paid for the development)
put some constraints
● It forced the customer to focus on the most important things (finally)
● Development continued and communication with the customer was active
(important!)
● Wide pilot use on fall 2014
● More development
● The release was 1.1.2015
● Happy day!
Humantech Development
70. ● Dexterity content types, like email-templates
● LOTS of workflows
● LOTS of content rules
● LOTS of automatic, semi-automatic and manual email-notifications
● Heavy use of Plone commenting
● The content editors could do a lot of stuff while we were developing new
features
● Lots of roles: author, reviewer, guest editor, managing editor etc.
● Super-simple (to use) login-link system - no hassle with registration
● Login links can be timed (to be active only certain amount of time)
● Big a** buttons - for better usability (than add new -> menu)
● Use of content type portlets for context sensitive help guides
Additional Humantech Features
71.
72.
73.
74.
75.
76.
77.
78.
79. ● Baseline: system really took advantage of most of Plone features and plone
flexibility - not sure you could have done that with any other CMS..?
Humantech
81. To provide psychological help to depressed, anxious and
stressed students
1. Text and self-help exercises (login with university id).
All content is created by professionals
2. Person-to-person support, anonymously
a. personal diary (student1, student2, etc.)
b. weekly exercises
c. comments and responses from an assigned coach
Opiskelijan kompassi - Student Compass
83. ● We are talking (almost) about medical data - the
students’ personal problems and issues
● At the beginning there might have been some human
errors with Plone permissions (by the customer’s
admin…)
Security was really important
84.
85. ● The customer thought that Plone was not secure
enough…
● The customer hired a couple of php-developers for a short
period of time
● They were sure that they could re-create the system in
couple of months with better usability and security
Security was really important
86. ● They also told that
“Plone is so popular,
that there are more security holes in Plone
than in php-applications”
Security was really important
87.
88. ● No php site after all
● The site is still Plone. New features were added this week
● Other universities have been so interested in the solution,
that Department of Psychology is discussing on selling it
as a service
In the end
90. Conclusions
● Keep your friends (developers) close - keep your
users/customers closer
● Find a good way to communicate effectively with a
customer or users
● Real feedback on systems that are in use (nobody cares
to test pilot systems properly)
● Keep the product life cycle in (the sponsor’s) mind
● Experiment!
93. Plone 5?
● Out-of-the-box-features are still plenty
● Future-proof and modern
● Mosaic + Dexterity content types
● Experimentation is still possible
● Plone 5 looks really good!