Why WordPress in Education

I’ve noticed the topic of WordPress in Education recently in my Twitter feed. @Jeffr0 over on WP Tavern was recently polling his followers for info on the type of CMS (Content Management Systems) used by schools, along with the cost to run such platforms. Here at Hamilton Wentworth District School Board, we are big WordPress users. Our main website is a WordPress site (http://www.hwdsb.on.ca). We run over 100 individual school websites on a WordPress Multisite Network, and back in May of 2011, we launched the HWDSB Commons: a second Multisite Network which now hosts over 8000 blogs for over 30 000 users.

There is a saying in the WordPress community, that WordPress is Free as in Freedom, not Free as in Beer. Beer may not the best example given the audience that may stumble upon this post in the feed (oh Puritan Canadian, you worry too much); free as is Costco samples would work as well, although it won’t look as good on a T Shirt). I don’t think I understood that concept when we first began this journey, because when you are first starting out, beyond the hosting fee, we found everything we needed in the free Plugin Repository hosted on WordPress.org. (In this instance I suppose I saw my own time dedicated to the project as a free resource.)

Think of plugins like “Apps for your Blog”. Plugins add additional functionality to your site. We use a number of different plugins to bend the Commons to meet our needs (more on that later, or by exploring the “plugins” tag on this site. Everything from BuddyPress to connect all our sites together in a Social Learning Network, to plugins that connect to our SAML infrastructure to enable Single Sign on between the Commons, our Brightspace LMS, and our Google Apps for Education instance. When you are first starting out, those free plugins are probably all you need.

I don’t want to paint a rose-coloured picture that WordPress is free though (in the beer/Costco-sample sense). I actually get quite perturbed when someone refuses to pay for a $25 dollar solution to a problem they are having with their blog, to a small web dev agency spending their time creating thoughtful solutions. We pay for premium plugins. We pay for premium themes. We pay a developer who helps us to build new functionality. The biggest difference that the WordPress in Education community provides, is that others are also paying developers to build out functionality, and the vast majority of those institutions share the things they build for free.

Think about the private CMS companies working in Education today. Most of them will have a catalogue of premium enhancements you can purchase. Sometimes, when they don’t have what you need, they will develop something for you (at an cost, and then an additional maintenance cost). Once that enhancement has been built for you, it gets added to their catalogue, and each additional client pays (again) for that same, previously developed functionality to be turned on. This incremental payment system leads to all of the school boards overpaying for functionality that already exists.

In the WordPress ecosystem we operate in, I pay for functionality to be developed, and I share it openly on platforms like the WordPress plugin repository, or on sites like Github. The money you would have spent to enable the previously developed functionality, you can now spend on something else, something that I might benefit from. Think about how much more responsible this model is, particularly when we are talking about spending public money.

We are all contributing; and the community benefits from those contributions; and our money — and the functionality of our platforms — improves exponentially faster than if we were all spending our money paying the private company over and over again for code that has already been paid for by previous customers.

This is the true benefit. As an example: we built an integration between Google Apps and WordPress, and everyone else can use it for free. The money you save by not having to pay for the same add on, can be used to build something new; something that I might need too.

Currently that community is comprised of mostly post-secondary institutions, but a couple of my K12 colleagues have started asking questions about how they might replicate what we have built at HWDSB.

This (long winded) post is an attempt to help them stand on our shoulders.

What do you need to get started?

If your school board doesn’t have staff who understand Linux, or look at you sideways when you say NGINX or Apache, I would strongly suggest paying a hosting company to host your site for you. We started out hosting internally, but as we grew, we realized that there were hosting companies out there who have a dedicated team working to ensure that the server is optimized for the kind of traffic you are going to experience. We struggled for the first few years with the site going down. It always happened on the weekend. @avivaloca would DM me, and I would sheepishly hope that the technician (who wasn’t paid to work weekends) would respond to my panicked text messages, and restart the server. Save yourself that heartache and host with a professional hosting company. Not everyone in the organization will think that your site being down is as much of an emergency as you do. I nodded my head in agreement when the Mark Zuckerberg character in the movie The Social Network stated that Facebook could never go down. That’s the kind of passion I felt about the Commons, and we are now in a place were a 500 error is very rare occurrence.

You want control of the plugin infrastructure. Although tools like CampusPress offer a limited number of plugins to enhance your experience, the collaboration I am hoping we can build towards requires you to have full control of the plugin and theme directories on your site. Otherwise you’ll still be looking on with jealous stares at what we can accomplish with our independently managed WordPress install.

Storage is going to be your biggest headache. We built that Google Apps integration to allows users to host their content on Google, and embed it on their blog. We also built an integration with Vimeo Pro that let’s us host video on their servers for cheap, without our videos ever appearing within the vimeo.com directory. That helps, but the local media library is hard to beat when creating photo galleries. You can limit the size of each site on a multisite instance so users need to manage their content. We host our content on the Amazon S3 cloud, which is the cheapest way we have found to allow users to archive work from past years without having to worry too much about space. You won’t need this right away, but eventually your users will start asking for more room. We use Tarsnap to back all that up. We haven’t had an incident yet, but you should have a contingency plan if your site gets hacked.

We use Let’s Encrypt to secure all our sites with SSL certificates. It’s free, but you need to find a host who supports provisioning the certificates. This isn’t essential, but in some of our more creative uses of the site, we have embedded a blog within a course in Brightspace, and for that, you need https.

We use a Moderation plugin to help moderate inappropriate content on the site. Part of the mandate is to create a gradual on-ramp for young users to experience social networking, in a space we have full control over. When a post or comment is flagged, the 21CL team is notified, along with the owner of the blog, and the author of the post. These are key teachable moments, and are much easier to deal with than if the same issue cropped up on a platform we have less admin control over (like FB or Instagram).

We moderate the creation of blogs too. Teachers can create multiple sites, but with students we try to limit them to one site. This helps keep the blogging directory free from sites with only one or two posts, with the eventual hope that we will be able to help students procure their own domain in high school, and understand the value of owning their digital footprint.

For sites where we want to foster collaboration across the school board, we have created a plugin that allows students to request membership to a site. This is one of the key differences between how we use our LMS, and how we use the Commons. The LMS tends to be linked to a specific class/course. The Commons opens up the opportunity to collaborate across the hall with other classrooms, between schools within the school board, or around the world with external community partners, or other international contacts.

We have an integration with Brightspace that syncs the membership of a course to a role on a blog. This is great if a class wants to create a group blog to collaborate with their classmates. Think of it like the discussion forum is the rehearsal space, and the blog is the public performance space.

We have set up a site for all of our secondary schools, and a number of our elementary schools, to create an announcements slide show functionality, that is embedded in school websites, and displayed in the hallways of schools, and within classrooms. That Brightspace sync makes sure teachers all have the correct permissions to be able to add announcements from anywhere.

https://github.com/hwdsbcommons/reveal-js-presentations
https://github.com/hwdsbcommons/Announcements-Site-Tweaks
https://github.com/hwdsbcommons/announcements-theme

We host domain mapped blogs for employees: https://adunsiger.com, https://suedunlop.ca, https://mrjarbenne.ca, https://mrkelly.ca, https://mrpuley.ca, and a couple others, are all Commons hosted blogs. Domain mapping, similar to projects like A Domain of One’s Own, is something we continue to investigate to make this functionality available for students as well.

We host LOTS of classroom blogs. These sites create a window into the learning happening in the classroom, and I’m sure contribute to richer “what did you do at school today” conversations around the dinner table.

Some things we don’t do too much of yet: @therealmrkelly and I have been talking about podcasting lately. I noticed local Journalist Joey Coleman tweeting recently about the Podlove plugin that powers his podcast and need to explore that further.

On the topic of journalism, every school should have a student newspaper, and the Editflow plugin is installed and ready to be activated on any school site looking to explore this medium.

We solve a lot of problems with WordPress. We share all our solutions with the broader WordPress community. Maybe you should consider joining us.

 

 

Disrupting Morning Announcements

I’ve been working on and off for a little while in the off hours on re-configuring how announcements are delivered at schools. We currently have an incredibly convoluted process that Paul Hatala and I conjured up when we were building the secondary school landing pages in the HUB (our LMS). Looking at it now, it seems like perhaps we were trying to see how many different pipes we could connect together before reaching our destination.

2016-09-19_21-17-13Version One

  1. Teachers submit an announcement through a Google Form
  2. That Google Form feeds a Spreadsheet
  3. The Spreadsheet is running a Google Script add-on called FormEmailer
  4. FormEmailer sends an email to a secret email address set up on a WordPress blog running Jetpack
  5. Jetpack has Post By Email enabled, and takes the #tokens# from FormEmailer, and converts them to a blog post
  6. The RSS feed from those blog posts feed widgets in the HUB created on http://feed.mikle.com/

Version Two

So Reliable!
So Reliable!
  1. All steps from Version one except the widgets from step six
  2. When posts arrive at the blog, they are converted to a reveal.js Slide using this plugin and a  custom bit of code to change the post type from post to slide
  3. While that is happening, back on the Google Form, it was determined that pulling announcements from the spreadsheet was difficult, so another Google Addon, DocAppender, came to the rescue, to make announcements more legible for reading off the PA
  4. An IFTTT.com recipe is sending each Slide as a Tweet in a few instances
  5. Someone needs to be deleting the slides once the announcement is no longer applicable

And then sometimes it breaks. We never know which cog in the gears is the offender, so fixing it is always an adventure.

Enter Version Three

  1. It’s a blog on the Commons.

That’s it. One piece of software (with multiple custom bits built into the theme). So when it breaks, it’s easy to fix, and when a school wants to start digitizing their announcements, we don’t have to pull out the two pages of documentation created to build version one and two.

It still uses those beautiful reveal.js slides from version two, which can be embedded in different places (like the HUB, and school homepages, or on websites like this). It looks great on monitors hanging in hallways, and is responsive, so it looks nice on your phone too.

 

Panic Inc. has created an app called Statusboard, img_0116that provides a widgetized interface for creating displays. This one includes a feed from an Outlook calendar with the rotary days on it, a feed of Tweets from a Twitter Account, a Countdown widget, the Announcements Slideshow, the Weather, and the Time. You can develop your own widgets for the board, so students could expand on the functionality I’m just scratching the surface on here:

 

I’ve created an instruction manual that lives on the site, along with a couple of videos to explain how it all works. Schools interested in adopting this new system can reach out to the 21CL team for assistance:

 

 

Why Go To All That Trouble?

One of the new strategic directions at the school board this year is about communication. This method of announcement delivery takes what was once private on the PA system in the school and presents it to the parent community. It also makes it available to students who couldn’t-hear/weren’t-listening/missed-something/were-absent while the announcements were being presented. It gives caregivers an opportunity to help get students involved in their school (Hey, you should go out for that play/team/club/thing).

Many of our schools can now boast having a digital projector in every room. Phase two of the master plan is to eliminate the PA system announcements all together. Why not display and read the announcements in your classroom at a time when students are ready to consume them, rather than when they are still struggling in the hall with snowpants or locker combos. What could an English class do with the concept of being communication managers for their school? What makes a good slide? A good Tweet? What other multi-media could we use to disrupt announcements (Props to SJAM-TV on forging a path here). There are companies who pay for social media managers to help support their digital footprint. What role could our students play in this at a school level?

We want students to do real things, and real things are necessary to help a school run. This is a small example with what I believe has a lot of potential. I look forward to seeing where people can take it.

SSL Everywhere

Warning; technical details ahead: Over the weekend, the entirety of the Commons was switched over to the HTTPS protocol. This has been in the works for a few months now, and took a few key steps.

We first needed to secure all of the content that you share on your site. We accomplished this by shifting all our media content to be served up using an S3 Offloads plugin developed by a company from Nova Scotia named Delicious Brains. For the most part all 200 000+ media items made the shift over to their new home. You might find you need to add your header back to the top of you blog, or if you manually referenced an image or file in a widget on your sidebar, you may need to grab the URL again now that it’s being served from a different server.

The next step was to procure certificates for all our our custom domains. Most of the sites on the site are covered under a wildcard certificate: *.commons.hwdsb.on.ca, but users who have opted for a custom URL aren’t covered by this certificate. We leveraged an exciting new initiative called Let’s Encrypt to secure sites like mrpuley.ca, suedunlop.ca, adunsiger.com, and mrjarbenne.ca. Although these sites comprise a small subsection of the 7097 sites hosted on the Commons, I’m inspired by the work of the Domain of One’s Own project, and would love to eventually see our work extend out to allow students to being building out their own digital cloud, as referenced in that linked article from Wired Magazine:

“Writing for EDUCAUSE Review in 2009, Gardner Campbell took the argument a step further. In A Personal Cyberinfrastructure he argued that learning to build and operate a personal cloud was a life skill students would need and should be taught”

If you don’t see the green lock at the top of the browser bar, you might have “mixed content”. A picture of a browser bar, with the green link indicating an SSL connection.This is caused by elements on the page that aren’t secured, and are still being delivered via http, and not https. In many cases, you can navigate to the post in question, and just add an “s” to the end of the “http” portion of the URL in the embed code (most sites that offer embedded content are secured by SSL. If you use a service that isn’t secure, reach out to them on Twitter and ask them to secure their embeddable content). Mixed content has been an “issue” within the HUB (Desire2Learn/Brightspace) for a few years now, so users who navigate that space will be aware of the issue. There is a movement to secure the web that we heartily support.

We couldn’t have done this without the help of our web-host and WordPress security specialist @boreal321.

As always, if you run into issues, don’t hesitate to comment below, or reach out to your 21CL Consultant via email.

The Commons Experiment

Picture of the Commons in 2011

5 years ago, around this time of the year, we sat in the Memorial Building in Ancaster, feeling like perhaps it was too late, and that maybe we should wait to launch until Semester Two. What would become the Commons had just been brought to life on a small server. Most of the summer was spent to ensure we would be ready for September, knowing that if we lost a Semester, we would loose the year.

Today, we accepted our 30 000 user into that “little” blogging community, where we provide a stage for students to publish their work; a window into the classroom so that parents can peer inside; a space for professional dialogue. We provide a means of connecting learners across the board with other learners, with colleagues and parents, and with expertise out in our community.

And somehow through all of that, my avatar looks younger ;).

Here’s to five more years of sharing.

Broadcast Posts

We are deploying a new functionality on the Commons called Broadcast. The Broadcast box at the bottom right of the post edit page will allow you to take a post and cross-post/duplicate/broadcast the post to another blog.

Historically we have always felt that students should have one main blog, on which the post all of their work. We recognize that classrooms and initiatives set up group blogs for a variety of purposes, but we didn’t want students to have numerous blogs established for one grade or one course that would have one or two posts on them, and then would be abandoned, when one of the key features of blogging is the ongoing portfolio of work it provides for a student to look back on. We have attempted to endorse the idea that students could use categories to properly categorize their work, much like I do on my blog, with topics like technology, pedagogy, and the Commons.  This is fine, but it can make it difficult — particularly in secondary (in elementary we find the teacher is usually responsible for multiple subjects and can just Follow the blog) — for a teacher to locate the posts a student has written for History, and Science, and English, if they are using the blog for multiple courses during the same semester.

Broadcast is our attempt to attend to this. If the English teacher creates a group blog for the course (using the Hub Sync functionality to add their students as Authors), then the students can broadcast their posts to that central blog using the new broadcast function. This provides a central location for students to see the work of their classmates. Currently comments left on the group blog sync to the student’s individual blog. The students can set it up so that the links on on the group blog will redirect back to the parent permalink (back to the student’s blog where the post was initially created.)

We are still crushing some bugs, but would love some classrooms to test out this functionality and either email me or comment below with feedback and commentary.

I’ve Broadcast this post over to my personal blog (so meta).

Some Thoughts on Distributed Leadership

I think in reference to HWDSB, we believe that it is the role of the board to remove as many barriers to success as possible. EG: Providing a device, rather than leaving it up to the families to BYOD something sufficient is a barrier we feel is worth removing. I recognize that other boards have opted for a different route. We certainly don’t dissuade students from bring in their own devices (although the recently rescinded Personal Electronic Devices policy had sections to suggest as much), but see more power (and equity) in provisioning a standard tool .

See the new 21st Century Learning and Technology Policy for more details

Providing consistency across the board in terms of the tools available to teach and learn ensures opportunities for more organic distribution of leadership and mentorship. Those who want to emulate what others are doing can more easily start, because not only is the pathway forged, but transportation is provided (if you will allow the metaphor).

When we apply this idea to software, specifically in the case of the HWDSB Commons, providing windows into the classrooms in HWDSB increases the number of available exemplars, and raises the bar in comparison to perpetuating silos, cut off from the types of examples that push better practice forward. Teaching “out loud” also forces reflection in a way that hiding bad practice within a closed door classroom does not. I recognize that a number of the blogs on the Commons were not built to share practice with other teachers, but were created to connect students or to connect to the home: despite this, the by-product is access from around the board, creating leaders who may be operating oblivious to the impact their posts –intended for the home — are having on their unknown colleagues.

External expertise can sometimes be utilized to help contribute to the vision. Apple has referred to it as “providing bandwidth”. I like this analogy because it infers that they understand the message, they are just helping to amplify it, or providing alternative ways to gain traction. External expertise is a double-edged sword. Bringing in confident development teams that can connect with the culture already existing in a system, providing a wider dispersal, can provide a helpful boost. That said, external trainers who struggle to connect with the momentum already existing in a board, or fail to “speak the language”, can turn off participants, and create animosity. It’s important to ensure that internal resources are being maximized. External partnerships are only worthwhile if they provide something that doesn’t already exist internally. We must be careful not to value the opinion of the outsider more than internal voices when deciding what we need in order to move forward.

Communication Technology “can” remove the hierarchy of communication to allow all stakeholders to see themselves as leaders. Platforms that allow inter-dept/school sharing can provide leadership opportunities. I think we still struggle with this as a board, having spent too much time in First Class, without reasonable alternatives. We see this happening on blogs in the Commons, and within some conferences in FC, for those people who know where they can be found; but it could take on a larger role in our movement forward when we provision those social network elements into the workplace on a corporate platform.

As a final thought, for some reason it is still acceptable for people to say they don’t “get” technology. I think this is something that can be leveraged. Individuals who are just starting to “get” it, feel able to help their peers in ways that other subject matter demands expertise (it isn’t acceptable to stand in a room and say I don’t “get” teaching literacy). We are seeing a greater willingness from people just starting out, to share what they know with others, when it comes to technology integration in their practice. This may be due to what Fullan describes as the “irresistibly engaging” properties of current technologies. I also find there is a greater willingness to opt into technology PD. Perhaps we are beginning to recognize that this isn’t a “nice to have” anymore, but a moral imperative if we want students to meet with success in the future. I say this cautiously, because if one were to use the “I don’t get technology” utterance as an excuse to not learn, it’s an issue: it is only when it provides fertile ground for those just a bit further along the path to intercede that it is an environment that should be embraced rather than disparaged.