This pair of videos from Computerphile explain some of the issues that arise when trying to create software for international audiences. The first, The Problem with Time & Timezones covers issues with global time calculations and some of the special cases which exist.
The second, Internationalis(z)ing Code, covers many issues relating to language - which go far, far beyond simple ASCII and Unicode character set issues.
The videos use multiple real life examples to highlight social and cultural differences across the globe, and how they affect programmers. They are implicitly address quite a few issues related to the IB TOK course.
Free software is a video which does a good job of explaining how free software is much more than free (gratis). It talks about the freedoms offered by FOSS and provides lots of examples. It also covers some of the more practical benefits of free software by explaining problems that can occur when commercial closed source developers drop support for their older versions.
A common question that students ask is how companies can make money with free software. Where's the money in free software? accompanies the above video and addresses this issue.
Linux is one of the best-known examples of free software and today many Linux distributions include live CD functionality that allow users to try the operating system without formatting or partitioning their hard drives. Trying a live distribution from CD (or USB flash disk for better performance) can be a great way to introduce students to free software and the programs that are available in a relatively safe environment.
The Open Source Initiative page has a very clear definition of what it considers to be open source software. The Free Software Foundation page is slightly less clear but also worth reading. It should be remembered that although often grouped together, "open source software" and "free software" are not the same thing.
The following ethical case studies involving software developers make excellent material for assignments or classroom discussions and debates:
The Occidental Engineering Case Study from Santa Clara University. This case study focuses on a software engineer pressured by management to certify a safety critical system he knows is not finished.
Therac-25 is a classic computer science case study. Between 1985 and 1987, software errors in the Therac-25 radiation therapy machine caused death or severe injury to six patients. Involving mistakes throughout the development and support processes, the case highlights the need for professional standards when dealing with safety critical systems.