Corante

About this author
Zack Lynch is author of The Neuro Revolution: How Brain Science Is Changing Our World (St. Martin's Press, July 2009).
He is the founder and executive director of the Neurotechnology Industry Organization (NIO) and co-founder of NeuroInsights. He serves on the advisory boards of the McGovern Institute for Brain Research at MIT, the Center for Neuroeconomic Studies, Science Progress, and SocialText, a social software company. Please send newsworthy items or feedback - to Zack Lynch.
Follow me on Twitter at @neurorev
Receive by email

GUEST AUTHOR ARCHIVES
THE NEURO REVOLUTION
TNRCoverWeb120.jpg Buy on Amazon
In the Pipeline: Don't miss Derek Lowe's excellent commentary on drug discovery and the pharma industry in general at In the Pipeline

Brain Waves

« BIO 2004 Conference June 6-9, San Francisco | Main | Saegis Pharmaceuticals - A Cogniceutical Pure Play »

June 10, 2004

Improving Software Productivity via Neurofeedback (A proposal)

Email This Entry

Posted by Zack Lynch

Several months ago Dr. Rajaram contacted me from India about an idea he had to utilize neurotechnology to improve software engineering productivity. The following is a paper he has written about the project. He is currently looking for sponsors and will be visiting the U.S. in mid-June (in New York On June 11 and in SF on the 21st).

Written by L.N.Rajaram, PhD

The average experienced programmers inject as many as 10 defects in 100 lines of code, spending more than 40% of their development time finding and fixing defects.

There are many reasons for writing software in such an inefficient manner including inexperience, incompetence, and the intrinsic complexity of the problem to be solved. The most common reason is an inexplicable tendency to discard proven prescribed practices of systematic effort and indulge in practices that Watts Humphrey calls as those of 'American Cowboy Programmers'. This style is popular with even some experienced programmers and is characterized by a sporadic mixture of 'code-a-bit, test-a-bit' (called CABTAB) set of unplanned activities.

Many attempts have been made to stop such practices by introducing several organizational models, standards and certifications. The most effective of these have been the Personal Software Process and the Team Software Process of the Software Engineering Institute, as these address issues at the level of individuals and teams that develop software. The emphasis is on individuals planning their activities and working according to their plans. Such disciplined way of working has shown astounding results and those who for some reason have undergone such training and have seen their individual performance improve remain converted to that style of programming.

However, the crunch is in getting people to realize that there is a need to improve, to get them to undergo this training and to inculcate a discipline of self restraint against tempting short cuts that are actually counter productive.

There is a persistent delusion that software complexity can be overcome with some heroic intellectual effort. A kind of folklore romanticism exists amongst the software community that they are the intellectual cream of the society and can overcome all challenges by the sheer power of their brains. However, the evolutionary origins of the human brain suggest that it is not designed to tackle the challenges faced in software development. The mind is involved in sporadic switching between the real world problem and its symbolic representation, between high level conceptual abstraction and low level procedural detail, between the ambiguity and hence flexibility in user requirements and the rigidity of a dumb machine. The mind is ill equipped to handle this complexity and requires help. The evolutionary psychologist Leda Cosmides sums it up very succinctly in Our modern skulls house a stone age mind.

The 'triune brain' proposed by Paul Mclean is fascinating. The model talks of evolutionary layers of brain. The brain stem is a reptilian relic and forms the lowest layer and is primarily responsible for controlling body's basic metabolic functions, like heart rate and breathing. On top of that is the second layer known as paleo-mammalian brain, also known as the limbic system. This is the seat of emotion and memory, comprising the amygdala, the hyppocampus and the hypothalmus. "Our primary emotions, love and fear, sadness and joy-emerge from this region, coloring incoming stimuli with emotional valences we have associated with past events stored in the hyppocampus or the amygdala." The top most layer is the neo-cortex. This is the most distinctly human and evolutionarily youngest component of the brain's architecture. Only primates have something similar. The cortex is the seat of abstract thought, long term thinking and complex communications.

It is obvious that the cortex has a very big role to play in an objective and rational intellectual process required for software development. Within the cortex there are different centers that process sensory information, do mathematical abstraction, language and symbolic abstraction and construction, fill-in missing information by sub-consciously extrapolating known facts, implied contexts and so on. Different circuits come into play during different levels and types of abstractions undertaken while formulating software requirements, design specifications, detailed level logic and algorithms and while implementing the code. Disciplined methods of software programming help in the predominant functioning of one or the other part of the brain and the 'cow-boy style programming' encourages the unstructured chattering of different parts of the brain bidding quick-fix solutions.

But we have a more serious problem than the incoherent functioning of the different parts of the rational brain. Software work like all other work does carry the attendant emotional baggage. There is fear of failure, need for peer recognition, expectation of reward, competitive pressure. Thus the limbic system also climbs on to the center-stage of the orchestra in the mind involved in software development. The Stroop Interference Test enables us to appreciate how difficult it is concentrate on any one aspect and to stop one's brain from thinking different things. It is indeed a wonder that the human brain has had so many intellectual achievements to its credit, in spite of its 'primitive' design.

Until the maturing of the software industry in the last couple of decades, a very insignificant fraction of the society has been involved in intellectual pursuits. For the first time in the history of mankind millions of people are involved in the type of intellectual activity characterized by the knowledge economy. Hence it has become very critical to find ways of routinely enhancing the intellectual productivity of large representative sections of society not specially endowed with extraordinary abilities. These neuro-feedback techniques have to augment the ongoing efforts of evangelizing disciplined software methods.

The application of neurotechnology could provide us with a 'head cap' that provides us with a feedback to help us monitor our brain activity. With the help of this feedback, individuals can be trained to willfully chose and restrict activity to the most effective part in the brain to deal with the specific aspect of the software problem at hand. The feedback can be used to prevent the cacophony of all the parts of the brain to drown us in an overkill of rationality and emotions. Several experiments in different contexts have been reported to localize and even measure the electrical activity in different parts of the brain of a subject to see its correlation with what the subject was thinking at that time. Steven Johnson has reported in his book 'Mind Wide Open' as to how he could calm his mind to 'pay attention to one specific aspect and shutting out other activity by the observing the feedback obtained by measuring his 'Theta waves'. Many sports persons have benefited by this technique and great ones like Tiger Woods seem to have a natural ability to shut out all unrequired rational thought while performing.

I propose that several areas of research be undertaken to ultimately understand how software productivity can be enhanced with a better understanding and monitoring of brain activity. To start with I propose that several subject programmers be asked to volunteer to study the activity pattern in their brains under controlled conditions. The conditions could be varied systematically by first having volunteers who practice disciplined software methods and have a proven track record of very good results. Secondly, the volunteers could be drawn at random without any previous coaching in disciplined methods. They could then be subject to other conditions such as stress of schedule, reward, ridicule, etc. A correlation between the use of best practices, the spatial and temporal distribution of brain activity and the quality of software and individual productivity could be established.

This study could then lead to applying the results to train intellectual workers to enhance their concentration on one aspect of the problem and thus improve their productivity. By observing the impact of stress and other emotional aspects, the work environment including the corporate set-up can be reengineered to suit this kind of work.

If we could get an insight into how to help individuals write defect free software to a far greater degree than the prevailing state of art we would have unlocked a major productive force that could make this world a far better place to live in. If you are interested in learning more about this project please contact me directly at (rajaram-at-webcalltech-dot-com)


Comments (0) + TrackBacks (0) | Category: Neurosociety



EMAIL THIS ENTRY TO A FRIEND

Email this entry to:

Your email address:

Message (optional):




RELATED ENTRIES
Neurotech 2010: Translational Researchers Highlight Innovation
The Neuro Revolution in China Progressing
Speakers for Neurotech 2010 - Boston, May 19-20
Giving the Brain a Voice: NIO Public Policy Tour in DC tomorrow
McGovern Institue for Brain Research at MIT Goes Web 2.0
The Neurodiagnostics Report 2010: Brain Imaging, Biomarkers and NeuroInformatics
Neuropharma FDA Approvals Down in 2009
Tel Aviv Neurotech Cluster Thrives