The Cloud

One definition for cloud is a visible collection of particles of water or ice suspended in the air, usually at an elevation above the earth’s surface. But that’s not what this article is about. The cloud is a term commonly used by the media and those in the information technology field. It’s a trendy and cryptic phrase, and many are left wondering what it is and where it’s located.

The cloud is not one single object or location. A general definition of the cloud would be this: a collection of software, services and data that resides on the Internet. To the general consumer, the cloud may consist of Gmail, Netflix movies, Candy Crush scores or a favorite song streamed to a computer or smartphone. Healthcare companies store information about you there. Police and federal agencies store details about you there. Basically, it’s data or services that an individual can access from anywhere an Internet connection exists.

The location of the cloud is about as broad of a topic as what is the cloud? Many of the big players in the tech game have their own little, or maybe not so little, pieces of the cloud. For example, Facebook has large data centers in Forest City, N.C., and Prineville, Ore. Those facilities can handle 1.32 billion monthly active users, 6 billion likes per day, 400 billion shared photos, and 7.8 trillion sent messages. Apple’s iCloud datacenter in Maiden, N.C., covers 200 acres and can handle 320 million active users.

The cloud has become an integrated part of most of our personal lives, but businesses are also taking advantage of it. The approach many companies have taken is to ease their way in, playing it safe and staying in control. There are positives and negatives to moving to the cloud. Some factors to consider are: bandwidth limitations, future functionality, disaster recovery, integration requirements, maintenance and support.

When your data and services are in the cloud you’re not responsible for keeping things operational, and that’s good and bad. I’m glad that there are web servers in the cloud where I can host my blog website. It would be costly, both in dollars and time, for me to set up my own personal system. But I find myself frustrated as I sit here and try to upload this article because the site currently not working. I wish I could jump in and fix it, but I can’t.

The cloud has descended upon our world and there’s little chance of escape. More and more of the services consumers and companies are using are becoming cloud-based. Our phones use it. Our operating systems us it. Every time we hop on Facebook, Amazon, Twitter or use our Google drive or Dropbox, we access the cloud. There is, however, a bright spot in the midst of all this cloudiness, with the move to the cloud comes easy access to our data.

Talking Machines…part 2

talkin machine2In my previous article, I talked about how far technology had progressed in the past 100 years.  In my own lifetime, I’ve seen computer technology really explode.  My first computer was a Commodore 16, with no hard drive, and 16k of memory.  There was no graphical operating system, and I couldn’t do much more than type at a prompt.  The PC came with a monthly magazine subscription that had sample programs listed in the back, and I can remember my dad and me sitting for hours typing in code for a Space-Invaders type of program.  It never worked.  We tried entering the program three times, but it would crash after about 30 seconds—must have had a bug.

Since that time hard-drive size and processing speeds have increased exponentially—Moore’s law describes a trend in hardware manufacturing where the number of transistors that would fit on an integrated circuit doubled about every 24 months.  It also seems a new PC becomes outdated minuets after removing it from the box.  However, in spite of all these computing advancements, human language programs have lagged far behind.

Computers can process large amounts of data very quickly—billions, and even trillions of instructions per second. A computer can search an encyclopedia for a phrase like “history of computers”, and return all the results in a list in just a few seconds. There’s just no way a person could do that kind of rote processing—it would take us months or years to do the same thing.

Computers tend to do certain types of tasks efficiently, like searching through a list or adding numbers. But there are certain tasks that are tough for a computer. For example, a person can look at an image of a friend, and within seconds recognize them. Computers can’t. There are image-recognition programs, but they are slow and unreliable.

Many forums and blogs on the internet have a CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) defense built in…when you post a reply to someone’s thread or blog, it requires you to look at an image, and then type it into a verification box. This is to keep computer programs from posting advertisements and other nasties to the site. This is effective because it is difficult for a program to look at an image and determine what it is.

Another difficult task for a computer is to process language. Human languages are ambiguous—take a look at this sentence: Time flies when you’re having fun, but fruit flies like bananas.

Does fruit fly?  How does time take flight?  Is “flies” a noun or verb, an action or insect?

Also stressing a word in speech can change the meaning of the sentence. For example:

I never said anything about you”
– Maybe someone else did, but I didn’t.

“I never said anything about you”
– I never said anything, but may have written something.

Imagine a future without the mouse or keyboard.  You get home from work, open the door, and immediately speak to your house computer, “Jake! Please turn on the TV.”  It responds in a pleasant voice and tells you it is now set to channel 23 for the evening news.  Later on that evening you’re sitting on the couch, “Jake can you email my sister, and invite her to the cookout Saturday?”  It replies a few seconds later and asks, “Would you like me to ask her to bring something?”  A program that can understand and follow a conversation would be very useful.

It could also become a very personal possession, and be passed on to your children and grand children, allowing them to ask questions about your life like  “Jake. What was my grandfathers favorite food?” or “Jake.  What was my dad’s first job?”

For now, computers that can communicate intelligently with us lies within the realm of sci-fi, but science fiction often drives scientific discovery.

Talking Machines…part 1

talkin machine1I’m amazed at the progress of technology over the past 100 years. Modes of transportation have gone from wheeled carts pulled by horses to vehicles that are measured in thousands of horsepower. There have been major advances in medicine—doctors can transplant most organs of the human body, and there has even been partial success in transplanting the head of a monkey to a different body.  Or was it the body to a different head? We’ve been to the moon and Mars. We’ve split the atom. We can talk instantly with someone on the opposite side of the planet, and computers that would have filled entire rooms years ago, can now fit on your wrist or in your pocket.

So… I pose this question. When do you think we will be able to talk to our computers?

We do this somewhat now, in limited capacities, so let me rephrase the question. When do you think conversations with our computers will be as real and indistinguishable as conversations with other humans?  I’m not talking about sentience, that’s an entirely different conversation, but when will computers be able to simulate human conversation?

ELIZA was one of the first programs to attempt a conversation between man and machine, and was created by Joseph Weizenbaum in 1966.  Dr. Weizenbaum was a computer science professor at MIT, and created ELIZA to simulate an empathic psychologist.  It would take statements made by patients and rephrase them as questions.  For example, a response to “My back hurts” might be “Why do you say your back hurts?”  It’s a simple little trick that seems to mimic intelligence, but is easily dismissed as it becomes apparent that there is no reasoning behind the responses.  There are many other conversational programs available today—Jabberwacky, ALICE, PARRY, ELLA, and HAL to name a few, but they all fall short when it comes to true natural language processing (NLP).

This idea is not new to the field of artificial intelligence.  Alan Turing first proposed a test of intelligence in the 1950 edition of Computing Machinery and Intelligence.  The test goes like this: a human judge has a text-only conversation with a computer program and another human.  If he is unable to distinguish between the computer and the other human, then that program passes the test—the Turning Test.

In 1990 Hugh Loebner brought this test to life by offering $100,000 and a gold medal to the first computer program whose responses were indistinguishable from a human’s.  This grand prize is still unclaimed, and programmers still compete annually for a bronze medal and a $2000 prize.

You might think that computers are smart, but the ability to do something quickly and efficiently doesn’t indicate intelligence.  For the most part, computers just do what you tell them.  They don’t think for themselves.  They just follow instructions.  There has been significant progress in the field of artificial intelligence (AI), but the smartest machines of today still only have the intelligence of an insect.

In 2005 Ray Kurzweil wrote a book called The Singularity is Near that suggests sentience will happen not too far in the future.  Ray has been hailed by many as a modern day scientific prophet.  Bill Gates said, “Ray Kurzweil is the best person I know at predicting the future of artificial intelligence.”  His book suggests that technology is growing exponentially—by 2020 machine intelligence will equal human intelligence, and by 2040 machines will surpass the intelligence of all humanity combined.

Is sentient life possible? Ehh… I don’t know, we’ll have to wait and see, but I do think it will be possible for a computer to emulate a human—first in speech, and then in action.