Computational thinking is the thought processes involved in formulating a problem and expressing its solution(s) in such a way that a computer – human or machine – can effectively carry out (Wing, 2014).
Informally, computational thinking describes the mental activity in formulating a problem to admit a computational solution. The solution can be carried out by a human or machine. This latter point is important. First, humans compute. Second, people can learn computational thinking without a machine. Also, computational thinking is not just about problem solving, but also about problem formulation (Wing, 2014).
In response to the need for a higher level of literacy around computer programming (coding) that this will create, the Federal Government has initiated an increased focus on science, technology, engineering and mathematics (STEM) and on innovation in Australian schools. This will aim to provide students with the coding and computational thinking skills that will be essential for their future careers (NSW Government, n.d.).
|Definition||Translation of natural language into a machine-level program.||Development of a fully functioning software.|
|Scope||Translating the requirement logic into machine code.||Analysis and conceptualization, debugging, compiling, testing, and implementation.|
|Tools||Text-editors such as Wordpad or Notepad, IDE such as Eclipse, Bootstrap||Tools for analysis, code generator, database, data structure, testing frameworks, linkers, compilers, code editors, GUI designers, assemblers, debuggers, performance analysis tools.|
|Skills||Basic knowledge of programming languages such as C, Java, C#.||Analytical skills, writing complex programs, data structures, and algorithms.|
|Viewpoint||Trial and error approach with no previous preparations.||An orderly approach and attention to minute details.|
|Outcome||A functional code.||An application, software, or website|
|Support||Broad community support from Stackoverflow, Github, Toptal, SAP Network depending on coder’s requirements.||Broad community support from Stackoverflow, Github, Toptal, SAP Network depending on programmer’s requirements.|
PS. This talk is from 2011, and if you're wondering...he did achieve his goals!