A text document that when compiled or interpreted by a computer, properly written, may perform a function. These text files are written by developers who understand the language and logic of the computer. This code is written in a programming language which has certain syntax and semantics that determine how the computer will function when the code is interpreted. Sets of instructions in the code come together to form algorithms.
Source code often remains unknown by the average user. Knowing the source code of a program allows for it's understanding and modification. Although a program can be reverse-engineered, it is much faster and easier to understand a system by knowing the source. This becomes harder if the program code is closed-source.
Source Code is often a protected trade secret but an increasing movement is appearing to make a program, or part of a program's, code open. This code is often distributed under a variety of licenses that allow either a company or group to maintain some form of control or to prevent any source from control. This open-source model can make the system more extensible.
Developers write and understand Source Code but only if it is in a language they are familiar with such as C, Pascal, Assembly, etc. Many languages have similarities that can be identified by an experienced programmer and adaptation to a new language is not difficult.