Computer Science Teacher
Computer Science Teacher - Thoughts and Information from Alfred Thompson

August, 2012

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Computer Controversies For Fun and Discussion


    I love a good discussion. Pros and cons and honest and hopefully friendly discussion of issue with different opinions make for good learning experiences. One of the things I would like to do should I ever get a full-time advanced computer science course is to ask students to study some controversial topics in computer science and write up their own researched opinions. Important issues need to be thought about and discusses seriously and not just have answers blindly accepted. And of course we all know how much emphasis there is lately in bringing writing and related literacy skills into more of the curriculum. This seems like a natural fit.

    I came across two lists of “controversial programming opinions” with one post named “20 controversial programming opinions”. It has some 76 comments as I write this post. A second post called “Hopefully More Controversial Programming Opinions” adds to the mix. Personally I didn’t find a lot to disagree with in the first post. The second one I found several things to disagree with. The big thing I disagree with in the second is:

    Computer science should only be offered as a minor. You can major in biology, minor in computer science. Major in art, minor in computer science. But you can't get a degree in CS.

    I think that is too narrow a few. I can see requiring a minor in an “unrelated area.” I can even see, in some cases, requiring a second major. Although admittedly fitting a second major in with a CS major is just about impossible in four years of university.

    Besides the controversies listed in these posts there are some that a particular to computer science education. The ever popular What Programming Language to Teach First? comes to mind. And the objects first, object late, or object never discussion (see Objects When? If Ever?) never seems to get old.

    Assembly language is an additional source of controversy. Does anyone really need it anymore? Should it be reserved to people with special careers or paths of study in mind or should one have some experience in order the call themselves a serious programmer or computer scientist? personally I believe that understanding Assembly language gives one important insights into how computers work and how to more deeply understand software concepts. Some disagree completely while still others suggest Assembly language should be the first programming language people learn! Great topic for discussion.

    Do you discuss controversial issues on your classroom or work space? Does full agreement ever come out of these discussions? Love to hear about it.

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Cloud Fundamentals Video Series


    The Trustworthy Computing group has been recording a series on Cloud computing fundamentals. The series (some 25 videos) wraps up this week with a series finale. There are a lot of issues with cloud computing including privacy, transparency, security, and more. These videos capture industry leaders talking about these issues and providing some great information in detail. I recommend the series.

    And if you want to dig into cloud computing there is the option to take advantage of a Azure 90-day Free Trial Azure is Microsoft’s big cloud offering. This site lets you sign up for a 90 day free trial so that you can try Azure out and learn more about cloud computing. Visit the Azure 90-day Free Trial website for the details and fine print.

    And now to make things easier I present an index to the Trustworthy Computing Cloud Fundamentals Video Series

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Ten Commandments of Computer Ethics


    I ran into these Ten Commandments of Computer Ethics created by the Computer Ethics Institute while looking for something completely different. Isn’t that so often the case? I like them. I think they are useful guidelines that are worth thinking about and discussing. Ethics can be complicated though. Some complain that these rules are too simplistic and overly restrictive. This set of class notes expands on the commandments and includes a claim that the “10 commandments contradict the hacking communities constitution” EDIT: See also Stephen Downes' response at Computer Use Guidelines

    • Thou Shalt Not Use A Computer To Harm Other People.
    • Thou Shalt Not Interfere With Other People’s Computer Work.
    • Thou Shalt Not Snoop Around In Other People’s Computer Files.
    • Thou Shalt Not Use A Computer To Steal.
    • Thou Shalt Not Use A Computer To Bear False Witness.
    • Thou Shalt Not Copy Or Use Proprietary Software For Which You have Not Paid.
    • Thou Shalt Not Use Other People’s Computer Resources Without Authorization Or Proper Compensation.
    • Thou Shalt Not Appropriate Other People’s Intellectual Output.
    • Thou Shalt Think About The Social Consequences Of The Program You Are Writing Or The System You Are Designing.
    • Thou Shalt Always Use A Computer In Ways That Insure Consideration And Respect For Your Fellow Humans.

    The Ten Commandments of Computer Ethics were first presented in Dr. Ramon C. Barquin's paper, "In Pursuit of a 'Ten Commandments' for Computer Ethics."

    To some extent the commandments are a bit simplistic but that argument can be made about most lists of ethical practices. The proof is in the implementation and how the spirit of the commandment is interpreted and not just in the literal words of it.

    I have known any number of students who would ignore commandments 3 (snooping) and 7 (unauthorized use) as they see the world as their playground and believe they have rights to go anywhere and use anything that they are not physically restrained from doing.

    I’d love to hear other comments on these “commandments.” I’d also like to hear about the results of classroom discussions on them with students. If you talk about these or other sets of ethics rules in your classroom (or business) I’d love to hear about it.

    Commandment 6 (dealing with proprietary software) is anathema to people who believe that proprietary software is itself unethical. Is there middle ground on this issue? Worth some discussion for sure.

Page 1 of 7 (19 items) 12345»