Open Vs Proprietary Mock Debate
|Title||Open Vs Proprietary Mock Debate|
|Overview||A teacher holds a mock debate in-class around which software paradigm is superior, Open Source, Proprietary, or It Depends. Initially the students prepare for it through research and argument structuring. Afterwards, they hold the in-class debate, allowing each side to talk and rebut. The event could also beneficially take place on IRC chat.|
|Prerequisite Knowledge||Basic software and source code contextual knowledge is needed in order to hasten the research into open and proprietary.|
|Learning Objectives||The student should be able to tell the differences, pro's, and con's of open and proprietary software and development methods. They should understand it well enough to discuss the topic freely amongst others. Crafting of an argument and discussion skills can also be primary objectives, if the instructor chooses this to be a focus.|
Which is superior "Open Source", "Proprietary", or "It Depends"? Each side says "Mine is better, here's why". The others rebut.
How to Conduct a Class Debate
Both students and teachers should familiarize themselves with debate formats and how it transcribes to the classroom. The teacher will choose a style, and/or define their own format and rules clearly to the class.
Below is a selection of resources that explain how you might hold a classroom debate. Read and use the top item if none-other.
(from Best to Worst)
- How to Conduct a Class Debate
- Lincoln-Douglas Debate Format: A Primer for Teachers
- Teaching Critical Thinking Through Debate
- Model UN Preparation
The rational for this activity is that students should 1) learn about open source vs proprietary choices 2) practice technically-oriented discussions and arguments. When going to the business world after graduation, students will need the skill of influence and debate and discussion more than you would think. Software creation and use is all founded on people - people who use it and make it. If we want our students prepared to work with others, in both open or proprietary ways, they need to know how to communicate and express their opinions.
- Divide Class Into Groups
- Research Your Topic and Argument
- Fill Out Argument Forms
- Hold In-Class Debate
1) Divide Class Into Groups
Each group will argue for a particular side that answers the question:
Which is superior "Open Source", "Proprietary", or "It Depends"?
- Open Source is superior
- Proprietary is superior
- It Depends on the circumstances
Despite their being groups, students will also be graded individually, and everyone is expected to debate.
2) Research Your Topic
Student groups will be given 1 week to do ample RESEARCH around the topic. Below are suggested actions.
Understand the basics of Open Source and Proprietary software:
Read the following articles and research:
Additional Research Required:
- Assure that you grasp multiple Pro's and Con's from all sides
- You will need to not only support and defend your own side, but rebut others arguments as well.
3) Fill Out Argument Form
Read through these completely before filling out. If not, you will miss some context and pointers that will give you a higher grade.
- Think Up! Defending Your Arguments
- See "What sub-topics might be raised?" below
FILL THIS OUT:
4) Hold In-Class Debate
Afterwards, they hold the in-class debate, allowing each side to talk and rebut. The event could also beneficially take place on IRC chat.
- TEACHER DEFINES THE STRUCTURE OF THE IN-CLASS DEBATE
- Which is superior "Open Source", "Proprietary", or "It Depends"?
- Each side says "Mine is better, here's why".
- The others rebut.
What sub-topics might be raised?
For Open Source
As Software Design
The design methodology and practices that many open source projects use is very different both in structure and in culture. The structure is more agile (able to change), free-flowing, and distributed. The culture is meritocratic, egalitarian and communal. More power can be given to the individual, and there is a pervasive sharing culture. Each of these aspects can be studied and defined and looked into as to their traits and differences and benefits over proprietarty software creation.
As Software Consumption
When a person or company decides to use a new piece of software, they will have different factors at play working for them in open source. Support can work differently - instead of paying a company, you often support it yourself with help from the community. This is changing though, as vendors are starting to formally support open source software, so its a doubly good point for open source. Both communities and vendors support OSS. You have a choice, whereas proprietary may not offer this choice, or not as in-depth on the community side. Customization of the software to fit business and person needs or desires is increased drastically. You have the source code, so you can understand how it works, and add to it. More often, open source is created in Service Oriented Architecture (SOA) type structures, so that modular design is a goal. This means that pieces can be swapped in and out easier, and that software components can be reused and/or called by another part of a seperate system. Integration into a customized and very competitively differentiated (it will beat out your competitors, because it is different than them) functionality is enabled because you can tweak the code to talk to other systems in unique ways. For example, you might modify what your customer see's by adding in a new field showing recommended items of interest based on their latest purchases. With a proprietary piece of software owned by another entity, that did not have that functionality, it would be very hard to convince them to add this complex functionality. They have dozens of hundreds of customers that they balance changes on. If its your #1 priority, you can take your own resources, modify the source, send it back upstream (to the open source project) and "tada", you get customers to shift their purchases to you, which helps you beat out your competition.
People need to earn a living, and need to be given a reward that can get them through the physicality's of life. This is why we have paid software, that protects its assets. If a business were to give away its source code, they are denying future possible profits via selling the software, upgrading it and supporting it. Proprietary software methods allows companies to have a competitive advantage over other companies that they are fighting against for customers. Proprietary ownership allows a company to better support and build a structure around a large product, therefore serving their customers with very structured, well-funded methods. Less confusion takes place. With open source, there can be two dozen entities taking part in helping to create the software. With proprietary, there is one. A single vision can take hold better - no need for decision by committees full of parties that look at it in drastically different lenses. User eXperience is greater because UX designers are hard to find, cost a lot of money, and need a single push from the top to be effective. Open source has distributed leaders and so no one force pushes user-focused development for a greater cause.
For It Depends
Different use cases demand different outcomes. Non-Differentiating IP in a bussiness means, software that is not someones "special sauce". Just a functionality that gets them by, and is not directly making them money. This functionality are often the first projects that companies open source. For example, you might have a database that works solid and hasnt added any functionality that you care about for years. Why pay tons of money for this when its been replicated and solid in open source now? On the other hand, there may be a cutting edge piece of niche software that detects peoples faces in a very new way. A new set of scientific research going on for the last 10 years leads to a piece of software that is unique and will make back the risky-resources put into 10 years of investment. A company will not want to open source this, as it will bring them back from the brink of bankruptcy, or excel them further than before. Google open sources much code, but they sure do not open source their search engine algorithms. Why? If they did, it would give competition like Bing and Yahoo the chance to copy their cash-cow and catch up to Google. Google has chosen to open source pieces that dont differentiate them and make direct money.
- Each student will hand-in their research
- Required: "Look it up! Researching the Arguments"
- Nice to Have's (increases your grade): ordered/unordered research notes, chicken scratch, or highlighted material
- Each student will talk during the in-class debate
- Talk for at least 2 minutes
- Everyone will be given a turn
- Comments need to be relevant and in-context with the wider discussion
Students will be graded on two factors:
- What is handed-in
- How they participate in the in-class debate
Hand-in will be graded for:
- Do you have at least 5 sources?
- Are the sources relevant?
- Do you create at least 3 major arguments for your side?
- Do you rebut at least 3 major arguments for the other side?
- Do you have 2 great quotes?
- Extra credit: Is there substantial additional evidence of research: ordered/unordered research notes, chicken scratch, or highlighted material
During the debate, you will get points for:
- Speaking for 2 mins
- Staying in context and responding to prior arguments
- Not reading a prepared cue-card
- If anyone interrupts, they will be docked a point
What should the instructor know before using this activity?
- Instructor should spend a bit of time defining and writing out a structure and rules to the in-class debate, and going over them with the students in-person, well before the debate.
- Will all students get a turn?
- Will there be interruptions allowed?
- Do students respond to arguments made, or make their own?
- Can students read from pre-prepared material, or must they discuss more openly?
What are some likely difficulties that an instructor may encounter using this activity?
- Some students will not be inclined to talk or take part in the debate. Many students are shy, do not feel they understand the content (even once researched), or are inexperienced / fearful of formal discussions.
- Students may tend to want to read from paper a pre-written statement. Instructor may want to disallow this, as the real world punishes this. Students drastically need professional discussion skills.
- Motivation: Grading and Personal.
- How students are graded, will likely encourage the type of in-class event you want to see. Motivate them by grading up or down on specific actions you want to see.
- Encourage them personally, one on one or even in-class focus on students who need a push to talk. Tell them why its important to them to do this.
|Knowledge Area/Knowledge Unit||What ACM Computing Curricula 2013 knowledge area and units does this activity cover? ACM_Body_of_Knowledge|
|Topic||What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics - https://www.acm.org/education/CS2013-final-report.pdf|
|Level of Difficulty||Medium; The topic is easy, the debate and argument structure is more difficult|
|Estimated Time to Completion||2-3 partial classes; 1+ week for research; 1 partial class for check-in of argument structure; 1 class for debate|
|Source||http://www.learnquebec.ca/en/index.html Requiring students to use copyrighted content from Learn Quebec; Email has been sent off asking for use; Links-only are provided for now|
|License||Creative Commons Attribution 4.0 International|
Suggestions for the Open Source Project:
Suggestions for an open source community member who is working in conjunction with the instructor.
This work is licensed under a Creative Commons Attribution 4.0 International License