Coding For a Living


A place to share and comment about coding for a living.

Can machines think? The Imitation Game Mike McIntyre

Can Windows, iPhone, and Droid smart phones compete head-to-head with humans in Alan Turning’s ‘Imitation Game’?

imageThe ‘Imitation Game’ was proposed by Alan Turing in his 1950 paper "Computing Machinery and Intelligence," which opens with the words: "I propose to consider the question, 'Can machines think?'"

Since the words "think" and "machine" can't be defined in a clear way that satisfies everyone, Turing suggests we should ask if the machine can win a game, called the "Imitation Game". It involves three participants in isolated rooms: a computer (which is being tested), a human, and a (human) judge. The human judge can converse with both the human and the computer by typing into a terminal. Both the computer and human try to convince the judge that they are the human. If the judge cannot consistently tell which is which, then the computer wins the game.

Turing writes 'What will happen when a machine takes the part of A in this game?' Will the interrogator decide wrongly as often when the game is played like this as he does when the game is played between a man and a woman? These questions replace our original, 'Can machines think?'"

What do you think? Can Windows, iPhone, and Droid smart phones compete head-to-head with humans in Alan Turning’s ‘Imitation Game’

Visual Basic 2012–Iterators Mike McIntyre

Iterators are used to perform custom iteration over collections such as lists or arrays.

Iterators make it possible to use the iterator programming pattern. Wikipedia states: “In object-oriented programming, the iterator pattern is a design pattern in which an iterator is used to traverse a container and access the container's elements. The iterator pattern decouples algorithms from containers; in some cases, algorithms are necessarily container-specific and thus cannot be decoupled.”

Iterators can be used to create a custom iteration over array or collection class.

Iterators can increase performance because they allow you to asynchronously consume the elements of a large collection.

Iterators can decrease memory use too.

Learn more by clicking: What's New for Visual Basic in Visual Studio 2012