Thursday, April 14, 2011

Robots

With the help of a remote human assistant, a person with disability pilots a robotic mobility and manipulation system and opens a refrigerator door to retrieve a pre-prepared meal from home. Cooperative control leaves the person with disability in command, and the ability to use the capabilities of both the local pilot and remote human assistant enable safe, effective, and efficient operation of the robotic system in natural environments.


More than that

Today, robots having a human-like body including a rotating head, arms, legs and six fingers and is capable of “seeing” three dimensional objects and can recognize people and jobs that need to be done. It has the dexterity, for instance, to pick up a dirty shirt, throw it into a washing machine and push the buttons to get the laundry done. So, in future the robot is design to help people in most of the time.

Reference:


Control the computer through brainwaves

SAN FRANCISCO (Business 2.0 Magazine) - -- Two years ago, a quadriplegic man started playing video games using his brain as a controller. That may just sound like fun and games for the unfortunate, but really, it spells the beginning of a radical change in how we interact with computers - and business will never be the same.
Someday, keyboards and computer mice will be remembered only as medieval-style torture devices for the wrists. All work - emails, spreadsheets, and Google searches - will be performed by mind control.
If you think that's mind-blowing, try to wrap your head around the sensational research that's been done on the brain of one Matthew Nagle by scientists at Brown University and three other institutions, in collaboration with Foxborough, Mass.-based company Cyberkinetics Neurotechnology Systems. The research was published for the first time last week in the British science journal Nature.
          Nagle, a 26-year-old quadriplegic, was hooked up to a computer via an implant smaller than an aspirin that sits on top of his brain and reads electrical patterns. Using that technology, he learned how to move a cursor around a screen, play simple games, control a robotic arm, and even - couch potatoes, prepare to gasp in awe - turn his brain into a TV remote control. All while chatting amiably with the researchers. He even learned how to perform these tasks in less time than the average PC owner spends installing Microsoft (Charts) Windows.
Decoding the brain
Nagle was able to accomplish all this because the brain has been greatly demystified in laboratories over the last decade or so. Researchers unlocked the brain patterns for thoughts that represent letters of the alphabet as early as 1999.
          Now, Cyberkinetics and a host of other companies are working on turning those discoveries into real products. Neurodevices - medical devices that compensate for damage to the brain, nerves, and spinal column - are a $3.4 billion business that grew 21 percent last year, according to NeuroInsights, a research and advisory company. There are currently some 300 companies working in the field.
          But Cyberkinetics is trying to do more than just repair neural damage: It's working on an implantable chip that Nagle and patients in two other cities are using to control electronic devices with their minds. (Check out this demonstration video).
          Already, the Brown researchers say, this kind of technology can enable a hooked-up human to write at 15 words a minute - half as fast as the average person writes by hand. Remember, though, that silicon-based technology typically doubles in capacity every two years.
So if improved hardware is all it takes to speed up the device, Cyberkinetics' chip could be able to process thoughts as fast as speech - 110 to 170 words per minute - by 2012. Imagine issuing commands to a computer as quickly as you could talk.
           But who would want to get a brain implant if they haven't been struck by a drastic case of paralysis? Leaving aside the fact that there is a lucrative market for providing such profoundly life-enhancing products for millions of paralyzed patients, it may soon not even be necessary to stick a chip inside your skull to take advantage of this technology.
What a tale your thoughts could tell
          Brain-reading technology is improving rapidly. Last year, Sony (Charts) took out a patent on a game system that beams data directly into the mind without implants. It uses a pulsed ultrasonic signal that induces sensory experiences such as smells, sounds and images.
          And Niels Birbaumer, a neuroscientist at the University of Tuebingen in Germany, has developed a device that enables disabled people to communicate by reading their brain waves through the skin, also without implants.
          Stu Wolf, one of the top scientists at Darpa, the Pentagon's scientific research agency which gave birth to the Internet, seriously believes we'll all be wearing computers in headbands within 20 years.
By that time, we'll have super fast, super tiny computers that make today's machines look like typewriters. The desktop will be dead, says Wolf, and the headband will dominate.
          "We already know we can trigger neurons mechanically," he says. "You can interact directly with the brain without implanted electrodes. Then the next step is being able to think something and have it happen: Flying a plane, driving a car, operating household machinery."
           Controlling devices with the mind is just the beginning. Next, Wolf believes, is what he calls "network-enabled telepathy" - instant thought transfer. In other words, your thoughts will flow from your brain over the network right into someone else's brain. If you think instant messaging is addictive, just wait for instant thinking.
           The only issue, Wolf says, is making sure it's consensual; that's a problem likely to tax the minds of security experts.
           But just think of the advantages. In the office of the future, the conference call, too, will be remembered as a medieval form of torture.
The article is taken from http://money.cnn.com/2006/07/21/technology/googlebrain0721.biz2/index.htm

Wednesday, April 6, 2011

Types of Database Management Systems

What is a Database Management System?

A Database Management System or DBMS is a single or set of computer programs that are responsible for creating, editing, deleting and generally maintaining a database or collection of data records. They type of database management system is determined by the database model. A database model is the manner in which the data collection is stored, managed and administered. The various database management systems based on these data models are:


Relational Database Management Systems

Relational database management systems are the most widely used database management systems today. They are relatively easy to use. Relational database management systems are named so because of the characteristic of normalizing the data which is usually stored in tables. The relational model relies on normalizing data within rows and columns in tables. The data can be related to other data in the same table or other tables which has to be correctly managed by joining one or more tables. Relational models may be somewhat less efficient than other models; however this may not be a problem with the processing power and memory found in modern computers. Data in this type of model is stored is fixed predefined structures and are usually manipulated using Structured Query Language (SQL). Relational database management systems include Oracle, Ms SQLServer, IBM DB2, mySQL, SQLite and PostgreSQL among others.


Flat File Based Database Management Systems

Flat File based database management systems are probably the simplest of them all. These are sometimes called Flat models. These come in human readable text formats as well as in binary formats. These are ideal for stand alone applications, holding software configuration and native format storage models. Flat files in a formatted row and column model rely on assumptions that every item in a particular model consists of the same data. One common example of this type of database is the CSV (Comma Separated Values) and another is a spreadsheet such as Ms Excel.


Hierarchical Database Management Systems

Hierarchical database management systems operates on the parent child tree-like model. These normally have a 1:N relationship and are good for storing data with items describing attributes, features and so on. These could store a book with information on chapters and verses. They can also be used to store a database of songs, recipes, models of phones and anything that can be stored in a nested format. Hierarchical database management systems are not quite efficient for various real world operations. One such example of a Hierarchical database management system is a XML document.


Network Database Management Systems

A Network database management system uses a data model similar to Hierarchical database management systems The major difference here is that the tree structure in the Network models can have a many parent to many child relational model. The Network model structure is based on records and sets and most of these databases use SQL for manipulation of their data. Network database management systems tend to be very flexible but are rarely used ad were very quite common in the1960s and 1970s. Searching for an item in this model requires the program to traverse the entire data set which is quit cumbersome. These have mainly been replaced by Relational database management systems in today's modern computing.


Object-oriented Database Management Systems

Object-oriented database management systems borrow from the model of the Object-oriented programming paradigm. In this database model, the Object and its data or attributes are seen as one ad accessed through pointers rather than stored in relational table models. Object-oriented database models consist of diverse structures and is quite extensible. This data model was designed to work closely with programs built with Object-oriented programming languages thereby almost making the data and the program operate as one. With this model applications are able to treat the data as native code. There is little commercial implementation of this database model as it is still developing. Examples of Object-oriented database management systems include IBM DB4o and DTS/S1 from Obsidian Dynamics.


References

1. John H. Porter Research Associate Professor, Department of Environmental Sciences, University of Virginia



Source: http://www.brighthub.com/internet/web-development/articles/110654.aspx

Systems Analyst

What is this job like?

Systems analysts figure out how to use computers to get things done. They tell businesses and other organizations which computers and software to buy, and they decide how to get those tools to work together.

Computer systems analysts start their work by asking people what they need their computers to do. Then, they plan a computer system that can do those tasks well. A system can include many computers working together and different types of software and other tools.

After analysts understand what the system needs to do, they break down the task into small steps. They draw diagrams and charts to show how information will get into the computers, how that information will be processed, and how it will get to the people who need it. For example, analysts might decide how sales information will get into a store's computers and how the computer will add up the information in a way that makes it useful for store managers.

Analysts experiment with different computer system plans. They try various tools and steps until they find the system that is fastest, easiest, and costs the least.

Next, analysts decide which computers, software, and tools to buy. They also tell computer programmers how to make any new software that is needed. They give the programmers step-by-step instructions. Some analysts help make the software, too.

The main job for some systems analysts is getting computers to work together. They connect them into a network. Analysts decide how to get information from one computer to another. Many help people get data from the Internet.

After planning a system, analysts test it to make sure it works. They check to make sure that information is processed quickly and without mistakes. They also watch to see if the system is easy to use. Often, they have to change their plans to make the systems better.

Computer systems analysts work in offices or computer labs. Some work from home. Working on a computer for a long time can give these workers eye, back, or wrist problems.

Sometimes, these workers work long hours to get a project done on time.

Analysts usually work as part of a team.


How do you get ready?

Many computer systems analysts have a college degree in computer science, information science, or management information systems. Some analysts get college degrees in other subjects. Then, they take computer classes and get computer experience.

Analysts need to understand computers, math, and planning. They need to know math so that they can solve problems and figure out how much computer power different systems would use.

Logical thinking skills are also important. Analysts need good speaking and writing skills, too, so that they can explain their systems and give good instructions.


What about the future?

The number of computer systems analysts is expected to grow much faster than average through the year 2018.

People with proper training should have good job prospects. Those who have college degrees in business and courses related to computers also should be able to find jobs in this field.

New jobs are expected as more companies try to use computers to improve their businesses. New Internet and wireless technologies are also expected to create more jobs.


Source: http://www.bls.gov/k12/computers06.htm

What is a Programming Language?

What Does A Programming Language Do?:

A programming language is used to write computer programs such as

•Applications
•Utilities
•Servers
•Systems Programs

A program is written as a series of human understandable computer instructions that can be read by a compiler and linker, and translated into machine code so that a computer can understand and run it.


Are There Many Programs In A Computer?:

From the moment you turn on your computer, it is running programs, carrying out instructions, testing your ram, resetting all attached devices and loading the operating system from hard disk or CD-Rom.

Each and every operation that your computer performs has instructions that someone had to write in a programming language. These had to be created, compiled and tested- a long and complex task.

An operating system like Microsoft's Windows Vista took millions of man hours to write and test the software.


Examples Of Programming Languages:

These languages include Assembler, C or C++. A computer motherboard with the CPU, RAM and ROM), the instructions to boot the computer are limited to a small amount of memory in the boot ROM chip and so are usually written in assembler. Operating systems like Linux or Windows are written in C and C++.


Traditional Programming Languages:

In the late 40s and early 50s, computer programs were entered by flicking switches. It was quickly realised how inefficient and slow that was and computer languages soon appeared.

Thousands of programming languages have been invented since then, many as PhD research projects, but only a few have been really successful. Through the 60s and 70s, these languages :

•Fortran
•Cobol
•Basic
all ruled the roost but declined when better languages came into being. Basic hung in there the longest but is now declining.


What Programming Languages Are Now In Use?:

It is mainly Java and C++ with C# starting to gain popularity and C holding its own. There have been many attempts to automate this process, and have computers write computer programs but the complexity is such that for now, humans still write the best computer programs.

More advanced techniques, for instance using

•Objects
•Generics
•Multi-threading


How Are These Newer Programming Languages Better?:

Lower level languages like

•Assembly Language
•C,
•C++

Force the programmer to think more about the problem in computer terms, instead of the business logic. Less about payrolls and more about how the data is stored.

C# though does not use pointers, so that removes the chances of a pointer being corrupted or not freed. The .NET runtime handles things like garbage collection, so the developer doesn't have to reinvent this wheel.


The Future Of Programming Languages:

The most popular programming languages are currently :

•C
•C++
•Java
(Sources: tiobe.com). As computers get faster, have more RAM, applications will get more complex, it is likely that more development will shift from C++ to the higher level languages such as Java and C#.
Microsoft have put a lot of faith in C# as their answer to Java and have the financial leverage to continue plugging it for a very long time. I expect both Java and C# to become the two dominant programming languages.


Source: http://cplus.about.com/od/introductiontoprogramming/p/programming.htm