Prezi

Share this prezi

Who can edit:

Present Online

Send the link below via email or IM to invite your audience

Copy

Start the presentation

Start presenting

  • Invited audience will follow you as you navigate and present
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can view together your prezi
  • Learn more about this feature in the manual

Download prezi for:

Present offline on a PC or Mac.

  • Embedded YouTube videos need an active Internet connection to play.
  • Portable prezis are not editable.

Edit and present offline with Prezi Desktop

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

Computational Thinking in Digital Technologies:

Today's literacy essential - Why all students should be encouraged to study IT in school
by Paul Herring on 23 October 2012

Comments (0)

Please log in to add your comment.

Report abuse

Prezi Transcript

Computational Thinking in Digital Technologies: Presented by Paul Herring, St Peters Lutheran College Today's literacy essential Why all students should be encouraged to study Digital Technologies in the Senior Years of Secondary School • understanding the difference between human and artificial intelligence, • thinking recursively, • appreciating the need for prevention, detection and protection against risks, • the use of using abstraction and decomposition, especially with complex tasks, • deploying heuristic reasoning, iteration and, search to discover solutions to complex problems. Computational thinking involves students learning to formulate problems, logically organise and analyse data, and represent it in abstract forms such as data tables, digital graphs, spreadsheets, models and animations. They automate solutions through algorithmic and declarative logic, and determine the best combinations of data, procedures, and human and physical resources to generate efficient and effective information solutions. Computational Thinking: algorithms cryptography machine intelligence computational biology search recursion heuristics Critical Thinking skills Entrepreneurial enabling Algorithms The design and analysis of algorithms are a fundamental topic in computer science and engineering education. Algorithms are the single most important toolbox for anyone who must solve problems by writing computer programs. Algorithms are used not only by computer scientists and computer engineers, but also by many in other engineering and science disciplines. http://www.guardian.co.uk/education/2012/mar/31/why-kids-should-be-taught-code/print "The biggest justification for change is not economic but moral. It is that if we don't act now we will be short-changing our children. They live in a world that is shaped by physics, chemistry, biology and history, and so we – rightly – want them to understand these things. But their world will be also shaped and configured by networked computing and if they don't have a deeper understanding of this stuff then they will effectively be intellectually crippled. They will grow up as passive consumers of closed devices and services, leading lives that are increasingly circumscribed by technologies created by elites working for huge corporations such as Google, Facebook and the like. We will, in effect, be breeding generations of hamsters for the glittering wheels of cages built by [IT innovators]. 'Why all our kids should be taught how to code' by John Naughton Is IT an academic discipline? A “discipline” is characterised by: A body of knowledge, including widely-applicable ideas and concepts, and a theoretical framework into which these ideas and concepts fit. A set of techniques and methods that may be applied in the solution of problems, and in the advancement of knowledge. A way of thinking and working that provides a perspective on the world that is distinct from other disciplines. Longevity: a discipline does not “date” quickly, although the subject advances. Independence from specific technologies, especially those that have a short shelf-life. Key Concepts: Languages, Machines, & Computation, Data and representation, Communication and coordination, Abstraction and design, and The wider context of computing Firstly, the wider context: Intelligence and consciousness: Computer Science is about more than computers. Computer Science opens up philosophical questions such as: can a machine be intelligent? ...be conscious? ...be a person? The natural world: Computer Science gives us a way of looking at the natural world, ranging from using computers to model the living world (e.g. simulations of animal populations) to thinking of the natural world in computational terms, for example, the way DNA encodes the sequence of amino acids that make up proteins. Creativity and intellectual property: Games, music, movies, gallery installations and performing arts are all transformed by computing and online experiences would not be possible without it. Should artistic ways of working be integrated with computational thinking? Moral and ethical implications of using computers: For example, as our world becomes more interconnected, we should consider privacy and what information should be private and what open to scrutiny; we should question how the vulnerable or the digitally disenfranchised can be protected. Focus on Computational Thinking: Small domain-specific languages, such as instructions to a simple robot, or Logo-style turtle. Visual languages such as Scratch, BYOB or Kodu. Text-based languages, such as C#, C++, Haskell, Java, Pascal, PHP, Python, Visual Basic, and so on. Spreadsheet formulae Scratch & Javascript; Small Basic & Visual Basic 2010 Debugging, testing, and reasoning about programs: When a programmed system goes wrong, how can we fix it? Programming gives students the opportunity to develop a systematic approach to detecting, diagnosing and correcting faults, and to develop debugging skills, including: Reading and understanding documentation. Explaining how code works or might not work. Manually executing code, perhaps using pencil and paper. Isolating or localising faults by adding tracing or profiling. Adding comments to make code more human readable. Add error checking code - check internal consistency & logic. Finding the code that causes an error and correcting it. Choosing test cases and constructing tests. Mind Over Machine - Dreyfus Cryptography: - the science of writing in secret code - 1900 BCE - essential for communications over untrusted networks eg Internet Cryptography: Security requirements for application-to-application communication: Authentication Privacy/confidentiality Integrity Non-repudiation A subject not taught within any other discipline Cryptanalysis and attacks on cryptosystems can also be studied. In the words of Sherlock Holmes: "What one man can invent, another can discover" Clearly both a very 'sexy' area of study as well as a very challenging and complex one. Also an area fill of flights of fancy; exaggerated claims; moving goal posts, religious, moral and ethical implications, as well as a real overlap with cogntive science, mind-body philosophy and, even medical research into disorders such as OCD. Machine Intelligence - AI Five Levels of Skill Acquisition Search & Search Algorithms While Google may only be the 12th most valuable company in the world; with IBM and Microsoft higher in the rankings and Apple at number 1, it is clear that the ability to search information rapidly and effectively is a very significant business imperative. Most visited URL's Aspects of Search: Formal Logic, including Boolean algebra Keyword search strategies Data Mining Spiders & bots Indexing & Page Rank web page 'popularity' & linking search impartiality mixed media searches face recognition searching/image matching keyword tools - Google Adwords SEO Data Visualisation Covert, non-personalisation searching Heuristics: a technique designed to solve a problem that ignores whether the solution can be proven to be correct, but which usually produces a good solution or solves a simpler problem that contains or intersects with the solution of the more complex problem. anti-virus scanners - heuristic signatures to look for specific attributes and characteristics for detecting viruses and other forms of malware Design techniques Human Computer Interface (HCI) Design Topics like: Rule of thirds; Contrast, Repetition, Alignment, Proximity Balance, Rhythm, Unity Typography Consider each of these areas of Computational Thinking - how can they be taught in IT courses? and where else are they currently taught, if at all? Recursion: Recursive procedures Factorial Fibonacci Greatest common divisor Towers of Hanoi Binary search Recursive data structures: Linked lists Binary trees Filesystem traversal Logo Microworlds Scratch Computational Biology Entrepreneurial Enabling: SAP in Digital Technology National Award - 'Best Practice in IT' 1996 CoolPC Jewellry IS Larry Page, Sergey Brin - founders of Google Michael Dell, CEO Dell Computers Steve Ballmer, CEO Microsoft Terry Semel, CEO Yahoo Andrew Grove, CEO Intel Mitchell Kapor, CEO Lotus Lawrence Perlman, co-chairman Seagate John Roth, CEO Nortel Networks Benjamin Rosen, Compaq Lawrence Ellison, CEO Oracle Systems Sandy Lerner, founder of Cisco Gil Shwed, Chairman Check Point Software A Common Denominator? "Taking an idea and turning it into action" Ideas into Action DNA, RNA Shannon's Information Theory the foundation of digital circuitry and digital computer theory "amount of information conveyed by an event is inversely proportional to the probability of its occurence" "The genetic code is contructed to confront and solve the problem of communication and recording by the same principles found ... in modern communicaton and computer codes" Hubert Yockey, 'Origin of Life on Earth' p105 DNA template base codes (T, A, C, G) transcripted to RNA bases (A, U, G,C) Four character alphabets of DNA & RNA then translated into 20 character alphabet of amino acids "the code cannot be translated except by using certain products of its translation. This constitutes a really baffling circle, a vicious circle it seems, for any attempt to form a model, or a theory, of the genesis of the genetic code" Sir Karl Popper 'Scientific Reduction' The same foundations open up great learning opportunities as well as great future research and career prospects Critical Thinking Clearly an important skill to be developed in all disciplines Rarely taught well - too many barriers, too many vested interests; cherished beliefs IT offers some unique advantages for those schools and teachers willing to take up the challenge - risk management vs risk aversion dialectic arguments Gen 4:10 --> Matt 5:17 The value of Education is recognized by most, but perhaps not as much as by the Jewish people (historically, the first nation where all learned to read). In the USA for example, while the Jewish population is at best only some 2% of the total population, Jewish students at Harvard, Brown, Columbia and Penn make up around 25 % of their respective undergraduate populations, and at Yale and Cornell, the number is around 22 %. IPT, ITS, ITGS? Certifications, ICDL, CCNA, CompTIA A+ Or a new approach? Small Business Unit incl. Bus. Management Application Learning in Context Multiple Strands Core theories - Shannon Information Theory; Algorithmic Programming, Conceptual Schema Design An Idea into Action what would it look like? Critical Thinking - using IT Debates on forums Social Media engagement Mock Courts Hypotheticals Logic & rhetoric strategies Logic fallacies Thank you for your attention! Questions? A future of change -IT enables 'create your own' employment "Students should learn enough to at least understand the security/privacy implications of what they do with technology and to enable them to learn and use new technology. Programming/coding wise it's largely just learning to understand logical reasoning and mathematics." - Chris Herring, Product Architect   I think everyone should learn how to think and when to dig deeper and should be able to do it in a welcoming and friendly environment. Learn how to question how things work. Learn that everything new and simple hides something large and complex. We are all standing on the shoulders of giants like Newton, Tesla, Kettering, Berners-Lee, and on and on. You can choose to live in a world where things just work, or you can choose to dig a little. You don't need to learn to code, you don't need to be an expert in everything but know that you can learn. Scott Hanselman <http://www.hanselman.com/blog/PleaseLearnToThinkAboutAbstractions.aspx Ray Kurzweil: “The only second language you should worry about your kids learning is programming.” 'The Adventure of the Dancing Men' Formal Logic Syllogisms Fallacies Computer programming (i.e., symbolic logic) Excel formulas and functions Symbolic reasoning Precedence “Fallacious” formulas Database logic Essays and presentations Modes of persuasion Logos Pathos Ethos Rhetorical Devices Linguistic devices Compelling presentation techniques “Bamboozling” techniques Argumentation
See the full transcript