Google
 
   
Login
Username:

Password:


Lost Password?

Register now!
Search
Main Menu
top books
Polls
What do you think about php-deluxe.net?
Excellent!
Cool
Hmm..not bad
What the hell is this?
encyclopedia
recommendation
compare webbrowser
Freenet DSL
Who's Online
10 user(s) are online (6 user(s) are browsing encyclopedia)

Members: 0
Guests: 10

more...
browser tip
Unix Befehle
manual of unix befehle
recommendation!
Sponsored
partner

Brain dump

The phrase brain dump refers to the transfer of a large quantity of information from one person or computer to another. As slang, it can describe a hurried explanation of a system, job, skillset, or other software engineering subject. In computing, describes the taking of a snapshot of the internal state of a knowledge database for transfer or archiving purposes.

There are 3 phases in the brain dump process: *capture; or the free- (if necessary guided-) forming of thoughts into a notation (or language, such as Unified Modeling Language) that can be stored in a computer. When people only are involved, this usually takes the form of a FAQ. *storage; or the computable and transformable machine representation of knowledge into a persistent medium (flattening or structuring of the data, such as a DBMS or Object_database). When people only are involved this takes the form of an interactive training disc (for example). *query, analysis, and transformation; or the access to information using a universal interface (such as an API, SQL, or a Wiki). When people only are involved this takes the form of the sitting of a computer skill exam such as any of the Microsoft Microsoft Certified Professional (or MCSE) qualifications.

The following sections will look at some of the existing approaches and broadly depict the mechanics of each phase.

=Expert system approach=

When inference engines were the norm in Artificial Intelligence, expert knowledge (in medicine, or some other suitable technical disciplines) was captured as set of rules: *all the rules are written by experts, and inserted in a computer system pool that is then hooked to inputs (electronic devices, or textual interface for humans to input the data) *all the input data is fed to all the rules, which then are analysed to see if the trigger conditions are met: in a medical context, if patient has, for example, any 4 of {symptom1, symptom2, symptom3, symptom4, symptom5, symptom6}, then there is a match *when initial conditions are met, the inference engine (usually written in a symbolic functional language such as Lisp_programming_language, ML_programming_language, or Prolog) consumes the input and fires an output value (which could end up on a piece of paper, such as a diagnostic note in the medical case) *this value is then put back in the pool

This is still used in some areas of psychiatry.

This captures all the knowledge of an expert, making the assumption that this knowledge is coherent and fully comprehensive. Most of the time, none of the assumptions on which the rules are based are checked (and sometimes end up being invalid, such as in the mental health discipline).

However the knowledge is available for all to see as a set of rules (sometimes with some data) with the associated inference engine (most of the time with source code). This set of rules-data-engine can then be modified or simulated.

The process of capturing the expert s brain is very labour intensive and highly specialised, and the final product is very artificial, nowhere matching the intricacies and nuances of a real expert delivering a diagnosis in real life (in the medical case).

A more natural research was started to remedy some of these shortcomings.

=Learning neural network research=

More modern AI uses an approximation of the brain s biology to get a computer system to learn : the evolutionary Neural network. This is for example the approach used by Steve Grand for raising / training his pet baby robot Lucy .

Take a situation where a number of inputs should generate a specific output (if there is light, then go towards it). A network of simulated neurons is fed all the inputs, and through iterative lengthy breeding , only the configurations that generate the desired output are selected (all the other behaviours result in the network being terminated).

This eventually generates a set of connected inputs and outputs, in a rather chaotic graph (with circularities and dead ends) of feedback loops, inhibition and stimulation paths. Once such a design has been obtained, the only way to exploit it (for example to mass-produce an integrated circuit such as an ASIC) is to copy the whole network, as is, with no modification. This is like making a photocopy. Nobody learns anything in this process (all you get is replication of a solution that is winning but hermetic/occult).

Here the knowledge cannot be extracted from the brain structure by a straightforward snapshot. But if the training was recorded, and if the underlying material (brain complexity and power) can be replicated, then it is assumed that new - albeit different - brains can also acquire the same knowledge. This also means that some training techniques will be more successful than others at successfully evolving a given brain technology. However, very little is known on the subject of training efficiency and the corresponding neural network suitability.

This probably was how the biological historical brain was developed, but this has - as yet - little bearing / usefulness with regards to getting one human to communicate her ideas to another human.

=The Unix core dump image=

In the computer operating system called Unix (and its variants), when a program crashes, it dumps a core . A big file is generated containing a snapshot of all the internal state of the software (contents of CPU registers, and memory cells) and sometimes of the hardware (temperature, input/output status).

This then requires a skilled human to start a Debugger application, to relate all the data in memory to the source code, and to get an idea of what led to the crash.

As a figure of speech, when one programmer requires that another performs a brain dump, only most rudimentary data and pointers are produced, and the recipient of the dump is supposed to then go back to the reference material (including software source code) to actually make sense of it all. Also, from time to time, a software engineer may perform a self- brain dump, to offload her brain, in order to be able to concentrate on something else, and yet be able to go back to a known state at a later stage.

A number of well- (and less-) known artifacts / formats are used in this process: *the FAQ (frequently asked questions) *the lessons learned *the revision log *various thought diagrams (for example see the work of Edward de Bono, and documents structured by techniques such as the Six Thinking Hats) *brainstorming notes (see various mind map software) *standard diagrams (UML, database structure, LAN/WAN layout, circuit pinout, office plan, etc...)

These files contain unchecked raw data, sometimes self-contradictory, at different stages in the thought process, from different historical times (recent, old, very old), rumours, gossip, gut feelings, etc...

However, all are focused on the subject being dumped (for example how you will be able to complete this software project on time ).

The brain dump is both data and context, and is intended to be read by another person who has a compatible mind-set (or context). This context is often not culture- nor language- dependent, in the sense that software engineering uses some form of universal English (via English-based programming languages) and standardised notations (such as Unified_Modeling_Language) to communicate algorithms and designs. However geek culture needs to be there for the brain dump to work.

=External links=

  • http://www.catb.org/jargon/html/B/brain-dump.html
  • http://www.brain-dump.com/

  • Colloquially, braindumps referred to confidential information relating to test (student assessment)s that were obtained by examinees by memorizing and then dumping (recording) them after the examination ends (mainly because no material might be brought out from examination rooms).

    Braindumps are commonly found in Certification#Abbreviated Listing of Computer-Related Certifications (mainly because they are expensive, difficult to pass, but the exam questions rarely changed). In these examinations, braindumps are in form of questions (possibly with their choices, if the questions are multiple choice questions).

    In most cases, using braindumps is considered cheating and spreading them is illegal (mainly because the test materials are Copyrighted or registered as trade secrets). Many braindump sites in the Internet have been cease and desist because they are spreading braindumps .

    Besides closing braindump sites, examination providers have taken various measures in order to prevent braindumps , like forcing examinees to sign a Non-disclosure agreement before taking the examination, changing the questions every so often, randomizing the questions order, punishing those caught using or spreading braindumps heavily, etc.

    Overall, braindumps are not good for the certification itself because it allowed unqualified examinees to pass the test, hence undermining the certificate s quality.