WCAG 2.0 – Closed Caption, Describe Video and Transcripts

Adding (or burning) captions into raw videos will not satisfy WCAG 2.0 criteria because the text then becomes part of the image which will not be narrated by screen readers or displayed on braille device. Real Closed Caption (CC) / Describe video is actually text overlaying the video for those who are visually impaired.

Moodle does not currently offer a way to include subtitles for a video. The standard compliant and best practice approach to inserting video captions requires using the HTML5 <track> element. The various attributes of the is element allow you to specify the type of content, the language it is in and a reference to text file that contain the actual information. A good file format to use for this is Web Video Text Tracks (WebVTT). SubRip Text (SRT) format files would need to be converted to WebVTT using a tool like srt2vtt. You could even specify the .VTT file for several languages all in one shot. I believe that there is even an inline technique so that you don't need to upload a separate file but I would need to double check that.

How do you create the WebVTT file in the first place? You could code it all by hand but this would be quite tedious. An easier approach would be to use an online tool like Subtitle Horse or Subtitle Edit for Windows.

While not a problem in most LMS' and CMS' like WordPress, there is currently no way to include CC with videos in Moodle yet. The alternative is to include a transcript of the video.

Normally you should put this first on your page but that would push the video way down. People may not even realize that there is a video until they are almost finished reading the text. In most LMS' that don't use YUI, this would be a simple matter of placing a link above the video pointing to the transcript, followed by the video and finally the transcript which could even be collapsed (activated by the link of course). This would require adding an id attribute to an HTML tag. Unfortunately all tags in Moodle get an id, automatically generated by YUI. This leaves you with no way to create in-page links. You could create the link but the id in <h3 id="your_id">Transcript</h3> would be overwritten by Moodle's YUI.

How do you get around this? I created a small piece of JavaScript code that you can add to Moodle. This JavaScript returns to you the power of creating in-page links that work in a similar way to the way native HTML works except that you can link to tags with classes instead of tags with ID's. You'll find my scroll-to-class-id-using-jquery-for-yui snippet (gist) on GitHub. It includes instructions on how to use it. For a smooth effect, you can combine this with my Smooth scrolling for in-page links snippet.

This technique could also address accessibility issues with audio files.

More Information -- WCAG 2.0 Techiques

I know it sounds complicated and maybe even overwhelming but, once you decide on an approach that meets the intent of the WCAG 2.0 principle and guideline, it will become a lot easier.

Hope this helps. Let me know if you want an explanation of the difference between Closed Caption and Describe Video.

Michael Milette

Camtasia alternatives and other media tools for screencasting

Camtasia is one of the best and most complete set of tools out there for capturing a recording of your screen (called screencasting) but comes at a cost of $313.99 per person (as of this writing). While you might be able to afford it for a few licenses, if you want to give access to this tool to your whole staff, the cost can really add up.

Here are some recommendations for (mostly) free media related tools -- for those on a limited budget:

  • Greenshot -- Simple to use, comes with an editor to annotate still screenshot (no video). Kind of like a free version of Snaggit. Why is a screenshot only tool included here? Because sometimes you may want to include screenshots in your presentation.
  • ShareX -- Does almost everything that Greenshot does and also includes full web page screenshots from browsers and screencast videos in both MPEG and animated GIF format. MPEG4 is great when you want to include sound while animated GIFs are great for short demonstration clips but does not support sound but result in much smaller files.
  • ScreenToGif -- Enables you to capture screencasts, webcam, whiteboard in animated GIF format. Includes an editor which is great for fixing your mistakes or removing long pauses in the video.
  • Open Broadcaster Software (OBS) -- This open source software is professional quality and offers the most flexibility through it doesn't do animated GIFs. You can do overlays, transitions, include video from multiple sources, includes a video editor and much more. The down side is that it has a higher learning curve than the others due to its extended feature set. I've done screencasts of up to 2 hours in a single take using this software.

The rest of the tools mentioned below enhance your screencast presentations or make it possible to edit your videos.

  • PenAttention PointerFocus ($) -- Wish you could help students follow your screencast by highlighting you mouse in a yellow circle like the pros do on YouTube? You can find all kinds of complicated tutorials on YouTube but PenAttention and PointerFocus makes it a snap. PenAttention is free but I found that it is not compatible with some computers. If you decide to go with PenAttention but want to also display keystrokes like PointerFocus, you can add this feature using PxKeystrokesForScreencasts. PointerFocus is a commercial product that you can try for an unlimited amount of time however, only when active, it will periodically nag you until you to pay for it ($12.50 USD). It does come with a number of extras to make your course or presentation easier to follow.
  • ZoomIt -- This free screen zoom and annotation tool makes screencasts even better by allowing you to zoom in to parts of the screen you are working on. It even includes a break timer should you use it for presentations.
  • Audacity -- One of the most powerful audio editors is available for free.
  • Pixlr / GIMP -- The cost of the Adobe Photoshop graphics/photo editor can really add up, especially when you have a team who only needs to use it occasionally. While GIMP is probably the most feature rich alternative to Photoshop, I personally find that it does not always produce the best results. Give Pixlr a try. It is an online tool so there is nothing to install.
  • Kdenlive -- There are several great free standalone video editing applications out there these days like Shotcut and VSDC however, if you find your computer is too slow or doesn't meet the minimum system requirements, take a look at Kdenlive. I've used this on 10 year old computers with just 2 GB of memory and it worked great.

TROUBLESHOOTING TIP: If you are trying to capture a screenshot or video of Chrome and are just seeing a black screen, you can fix this by disabling Hardware Acceleration. In Chrome, go to Settings Show Advanced Settings. Scroll all the way down to System and uncheck Use hardware acceleration when available.

Have any media tools you use that you recommend? Feel free to share your experience!

Best regards,

Michael Milette

Multi-language content in Moodle

So, you are have a Moodle website that runs in multiple languages. To date, you've been doubling up all you text doing things like "This content is in English. / Ce contenu est en français." As a result, the site looks a mess no matter in what language you use Moodle. In addition, this results in an accessibility issue because users of screen readers get really confused when the alternate language comes through their speaker… and not even pronounced correctly. What can you do?

If you haven't come across it yet, take a look at the Multi-Language Content (v2) Moodle plugin available for free on Moodle.org. It allows you to create multi-language content that only displays in the currently selected language of Moodle. Be sure to follow the installation instructions as you need to enable it in order for it to have any effect. Here is how you would use it in your content:

Inline example:

{mlang en}This content is in English.{mlang}{mlang fr}Ce contenu est en français.{mlang}

Block example:

{mlang en}
This content is in English. 
You can have multiple paragraphs.
{mlang}{mlang fr}
Ce contenu est en français.
Vous pouvez avoir plusieurs paragraphes.

The cool thing is that you do not need to know any HTML or programming in order to use this. Just type the {mlang} tags around your content just like you would any other content.

As a result, when your user chooses to view Moodle in English, you will only see the English text. When viewing Moodle in French, you will only see the French text. You can actually have as many languages as you want by repeating the series of {mlang} sections.

If you were working with Portuguese, you would use (the order of the languages is not important):

{mlang pt}Este conteúdo está em Português.{mlang}{mlang en}This content is in English.{mlang}

But what if you actually want text to appear in multiple languages on the same page? Take a look at the Moodle FilterCodes plugin. One of the many supported tags is the {langx xx}Your text{/langx}. For example:

{langx pt}Este conteúdo está em Português.{/langx} / {langx en}This content is in English.{/langx}

As a result, the text for both languages will appear on the page however the {langx} codes will be replaced by HTML that correctly tags the text in the appropriate language so that screen readers read it correctly.

Another important use would be if you needed to mention the name of a company. For example, if I had a Spanish Moodle website but wanted to mention the name "General Motors", you would wrap it in {langx} tags so that gets pronounced correctly by a screen reader regardless of Moodle's language:

{langx en}General motors{/langx}

Note that these special tags are not available on learn.moodle.net or moodlecloud.com. You can only install this plugin on your Moodle site.  While most of Moodle supports this, support can vary depending on the theme and plugins you use. If your theme or plugin doesn't support this, contact the developer and ask them to fix this problem by making use of the Moodle "format_text()" or "format_string()" functions. You don't need to know the technical details. The developer will hopefully fix the problem and publish an updated version of their plugin or theme.

Let me know if you have any questions.

Best regards,

Michael Milette

Choosing a Moodle theme

While you may simply choose a theme based on the way it looks, smart people know that themes are more than skin deep. Here are a few things to consider when choosing a Moodle theme:

  • Make sure that the theme is compatible with the version of Moodle you want to implement. If it is not, contact the developer/vendor to find out if that was an oversight, or if they are imminently planning on releasing an update in the near future.
  • Choose a layout that you like. Changing the layout usually means changing the theme source code which makes it hard to upgrade down the road without always having to re-apply your customizations each time. For example, although Essential is a nice theme with lots of options, it is really a 3 column design (content + 2 columns of menus) which severely limits the space available for your course content.
  • Make sure that the theme is highly customizable (lots of options -- like Adaptable) -- unless the theme is perfect as is.
  • Make sure the theme has no HTML errors.
  • Keep in mind that colours can be customized through CSS. Be weary of nice looking themes like Enlightlite that have "Predefined color schemes" unless you absolutely love one of them.
  • Is RTL (right to left text direction) important? Keep it in mind.
  • Are Moodle custom menus supported? It is always surprising to me when one doesn't.
  • Make sure the theme is responsive -- works on Mobile and Desktop devices without having to zoom in.
  • Make sure the theme is as compliant with WCAG 2.0 accessibility guidelines as possible. Note that I have yet to find a free or commercial theme that meets accessibility guidelines.
  • Make sure the theme includes multilingual support -- important if you have a multilingual or non-English website.
  • Can make the theme look like your organizations main website -- branding is important and it will help students feel like Moodle is an extension of the corporate website instead of a completely different and potentially unrelated website.
  • Support -- If it is a commercial theme, is the developer responsive to your inquiries? If they don't respond to your pre-sales inquiries, don't assume it will get any better after you give them your money. For free themes, where do you go in order to get support? Don't get me wrong, there is a healthy Moodle community out there willing to help out. Some free themes. like Adaptable, do have a paid support options.
  • Is the theme currently actively being developed? If it hasn't been updated in a while, that could be a bad sign. Check with the developer though, he/she might be working on a new release.
  • Does the theme try to change how Moodle works? While a noble cause, this can also easily create compatibility issues in the future.
  • Does the theme slow down your Moodle site? Moodle is already pretty resource intensive and the last thing you need is something more slowing it down.
  • Is the theme student oriented? I've used some themes that were definitely created by developers for developers.
  • Is the theme within your budget? Keep in mind that, although it is nice to get things like Moodle, plugins and themes like Academi for free, considering the overall cost of setting up your website, the price commercial theme developers like RemUI and Lambda charge or the support fee some free theme developers charge, it is a relative minor cost… and the money you pay will go towards supporting and encouraging further development so that your theme doesn't end up deprecated. Don't let the price of a theme be a determining factor unless it absolutely needs to be.
  • Does it look professional and clean?

Personally, I have had a lot of success with Adaptable. It is super configurable which is great because it doesn't look so hot out of the box (IMHO). However, tweak the settings and it can look amazing. And if you have multiple sites -- such as for development, staging, etc -- it has the option of exporting settings and importing them into another Moodle site.

Where can you find Moodle themes?

Hope this helps. Best regards,

Michael Milette

How to be Happy

I often talk about finding fulfilment through growth and contribution. Today, we will look at how to actually find happiness.

You can't buy happiness -- this isn't actually true. Scientific studies have shown that you can actually buy happiness. The truth is actually pretty close. You can't buy lasting happiness. The happiness you get from things you buy, whether it is a car, a house, jewellery, a new computer, or anything else will only last a relatively short period of time. Then there are the studies that show people in third world countries living in poverty who are happy all the time… much more than rich North Americans. What gives?

While having money can definitely help, how long could you really be happy if you could buy absolutely anything and as much as you wanted anytime you like. Things can't make you happy in the long run.

So how can you be happy? Give this a try -- it won't even cost you a dollar:

Step 1: Start by watching this video (about 2 minutes). For a more in-depth explanation, see How to solve for happy: Engineer a Path to Joy (just over an hour).

Step 2: Practice trying to see things in a way that allows you to feel grateful for what you have and your life experiences. It isn't always easy to find that perspective, even for the best of us. If you're been unhappy for a long time, it will take practice because you've got yourself into a bad habit. Think of happiness as a muscle that you need to work on each day to make it stronger.

Can't find anything to be grateful for? Be grateful for the journey and the trends in your life.

Step 3: See things as they are now. Are they better than they were a year ago? Notice trends in your life instead of specific situations. Are you heading in a positive direction? If not, it is time to change course and try something new or different.

See things as they really are, not worse than they actually are. When travelling from one place to another, it is always important to know from where you are starting. If you want to make positive changes in your life, it works pretty much the same way. Next get a clear picture of where you want to go and how you could improve specific things in your life. Finally, make a list of what you will need to do to get there. This is seeing things as they really are.

It may seem overwhelming at first. Be patient and consistent.Things rarely change overnight. Even the smallest positive change each day will accumulate over time.

Step 4: Focus on what is good in your world and build on it. If it means being grateful for your next breath, the water that comes out of the faucet when you turn it on, or the light that is at the command of a switch, then focus on that. Once you have found something to be grateful for, don't just acknowledge it -- celebrate it! Have a gratitude party with your friends. Celebrate sunshine, rain, drinking water, friendships, a bed, food, healthy parts of your body, memories, challenges, being able to help someone and opportunities to learn and grow… just to get you started. Reward yourself for making progress. See setbacks as opportunities to learn and grow.

Unhappiness and stress occur when your view of your world is different from your internal blueprint of what you think or wish life should be. This brings me to the next final step:

Step 5: Accept the things you can't change. Keep in mind that, just because you can't change something today doesn't mean that you won't be able to tomorrow. All you really need to acknowledge is that you will not let something in your life bother you anymore for 5 minutes, today… maybe not even tomorrow. It need not be a life long commitment to abandoning your dreams or desires.

Allow yourself time for unhappiness but agree to put a maximum time limit on dis-empowering self-pity parties. Of course you always have the option of opting back into a state of happiness early.

Words of Wisdom: Take Control of Your Life

With every breath you take in life, you have the power to make new choices, see things in a different way and adopt new beliefs -- regardless of anything that has happened in your past. Your future does not have to controlled by your past.

Dealing with a mean bad boss

It depends on what you mean by a really bad boss. I've had some bosses that kept having me do things that were not really my job. I may not have liked it at the time but I learned so much from being pushed through the experience. Eventually it became a positive step in my career, something that I would have never done otherwise.

Being mean is often a method of protecting oneself by pushing other people away. What happened in your bosses life that was so terrible that he/she had to decide not to let anyone in? It's been my experience that, when everyone thinks something bad of someone, they are often all not taking the time to understand that person. They may not even really feel that way, but they say it so that they are not judged the others as weak.

When dealing with a boss that you feel is being mean to you, just be sure not to have a double standard. Consider how you would react to actions you are considering taking. Would it be viewed as something positive? For example, how would you feel if people talked poorly about you behind your back? Is there any chance at all that there might be some truth to what your boss has been saying? You may not like what you are hearing but are you 1000% absolutely certain that it is not true at all, even perhaps just a little? There is usually at least some small amount of truth when you try to see things through their eyes, just as you are probably justified to be feeling resentful from your own perspective.

When dealing with a mean boss, you might want your boss to see things your way but have you considered trying to see the situation from their perspective? If you were the boss, what would you hope to get from your employee? Perhaps some understanding of the situation… just like you.

You might be starting to realize that you actually have something in common with your boss. You are the two faces of the same coin. So now dig out the best version of yourself and, with congruence in mind and in your heart, start to figure out how you would hope to resolve the issue. It time to be completely honest with yourself

Is it time to talk with your boss like a mature adult? Some people are natural born leaders. Some leaders need to learn how to step up without crushing others. Then again, maybe they aren't even aware about how you feel or that there is even a problem.

People only have power over you as long as you let them. There over thirty million people in Canada and over three hundred million people in the U.S.A. There are over 7 billion people in the world. If you feel that you have done everything that you could possibly do to resolve the situation and your boss simply doesn't care, there's no reason to work for one person who has no respect for you.

You could get rid of the problem by seeking a promotion within the current company or moving to a completely new company. This isn't running away, it's working towards and enabling you to be the best version of yourself. Regardless of how you feel, always try to leave your current employer on good terms. You never know when you might need them again. They could end up being your next client in your new job.

That said, do make sure you have another job before you quit your current one if possible.

Words of Wisdom: What do you live for?

Death is not the greatest loss in life. The greatest loss is what does inside us while we live.
--Norman Cousins.

If you are reading this, it is probably because you still have something to live for -- even if you have yet to discover it.

If you pay attention, try new things and meet new people regularly, you'll find your reason for living. Learn from your experiences, notice things for which to be grateful in your life and find meaning by contribute your knowledge, experience and efforts to helping others.

Patience, you will soon discover many things in life to live for.

Building a Sustainable Future

Want to make the world a better place? It's our children who are going to shape our future and, next to parenting, providing these children with the best possible education will create a sustainable future for our economy and our country.

Here are a few ideas to get started:

  1. Increase teacher salaries significantly across the board and provide them with the resources and support they need. This will also provide motivation to attract the best people to the education industry.
  2. Make continuing education mandatory for teachers. If a teacher isn't ready to keep up with a changing world, actively embrace new innovative techniques for teaching and have the power to implement what they learn, should they really be teaching our adults of tomorrow?
  3. Find qualified high performing school principles who know how to motivate teachers and kids, give them the respect they deserve and who have the power to get rid of under performing teachers who really aren't interested in anything but collecting their paycheck. Turn this into a competitive industry where only the best, the brightest and most effective leaders are considered for this critical role. A good principal can make a world of a the difference for the teachers, the students and relationships with parents. A good strong leader with a clear vision can bring out the best in people, whether it is in business or in schools.
  4. Help students become good people first. Help them embrace who they are, foster their curiosity and build up their self-confidence and self-esteem. Teach them basic learning skill that will carry them forward throughout their education and into their professional years. The days of learning a skill in school and expecting it to carry you through to your retirement are over. In many families today, at least one whole generation has gone without learning basic life skills. We need to bring these back into the schools and teach students how to become more responsible parents in the future.
  5. Make higher education available to the best and brightest, regardless of their financial status. It is not a sustainable plan for students to graduate with a huge debt in order to get a good education. Every day there are Einsteins, da Vincis who will never get an opportunity to contribute in this world to their full potential because they simply can't afford it. Sickness, disease, poverty and even war could potentially wiped out in a generation but adults first need to see the value in contributing to a sustainable future through education.

Countries around the world are embracing new approaches to education and are not only starting to prosper in a global competitive economy but also seeing responsible citizenship and significant reduction in crime. The education system that produced factory workers is obsolete.

We MUST embrace innovation and creativity, and it all starts with educating our future.

Words of Wisdom: We shouldn’t all be millionaires

Think about this for a moment. If you make everyone millionaires, all you end up doing is devaluating your currency. In fact, the same can be said of raising minimum wage. Everything ends up being more expensive because employers then need to pay everyone higher salaries.

So when should you get a raise? When you provide added value to their employers… not just because they've sat in a chair pushing the same button for a long time.

If you can help, contribute and help your employer build their business and make more money, why wouldn't they be delighted to pay you more? If not, it might be time to go help someone else build their business and make more money.