below i will provide to you the transcription of a video lesson called "writing source code".. Study the content of it, find the meaning the speaker wants to convey and create a text, a lesson that will convey this meaning in an easy to understand way to college students new to the subjects discused in it. this is the transcript : ""1
00:00:00,000 --> 00:00:03,990
Programming language source code is written in plain text.

2
00:00:04,000 --> 00:00:07,990
You can open up a simple text editor that comes with your operating system like

3
00:00:08,000 --> 00:00:12,990
Notepad on the PC or TextEdit on the Mac, and they work just fine to write any

4
00:00:13,000 --> 00:00:14,990
programming language.

5
00:00:15,000 --> 00:00:17,990
There's nothing magical about source code itself.

6
00:00:18,000 --> 00:00:21,990
It's just text. And that's plain text, not rich text.

7
00:00:22,000 --> 00:00:26,990
So here for example is a text editor with some JavaScript in it and here is one

8
00:00:27,000 --> 00:00:31,990
with some Perl and here is one with some Ruby and here is one with some Groovy.

9
00:00:32,000 --> 00:00:32,990
And yes, Groovy is a language.

10
00:00:33,000 --> 00:00:37,990
Now right now don't worry at all about trying to memorize any of these.

11
00:00:38,000 --> 00:00:39,990
That comes later. Just observe them.

12
00:00:40,000 --> 00:00:44,990
It's common to see different file extensions being used like .js for

13
00:00:45,000 --> 00:00:49,990
JavaScript and .groovy for Groovy files but they are no different from .txt

14
00:00:50,000 --> 00:00:51,990
regular text files.

15
00:00:52,000 --> 00:00:54,990
But what you don't want is a word processor.

16
00:00:55,000 --> 00:00:59,990
If you're writing code in a program where you see a formatting bar with bold and

17
00:01:00,000 --> 00:01:02,990
italic options, you are probably in the wrong place.

18
00:01:03,000 --> 00:01:07,990
Programming language source code does not need to be bolded or underlined or

19
00:01:08,000 --> 00:01:09,990
italicized or justified.

20
00:01:10,000 --> 00:01:13,990
So say if you're using a program like TextEdit on a Mac that can work in the

21
00:01:14,000 --> 00:01:18,990
either rich text or plain text modes, you want Plain Text.

22
00:01:19,000 --> 00:01:23,990
Now programs don't actually have to be much more than this. In fact these

23
00:01:24,000 --> 00:01:29,990
would all be considered very simple but technically complete programs in these languages.

24
00:01:30,000 --> 00:01:36,990
Just one statement, one instruction that outputs the words Hello, world on to the screen.

25
00:01:37,000 --> 00:01:42,990
Now Hello, world is the classic example of this simplest program imaginable in any language.

26
00:01:43,000 --> 00:01:44,990
So let me show you a few more.

27
00:01:45,000 --> 00:01:51,990
So this is a one statement program written in a language called ALGOL 68 and by

28
00:01:52,000 --> 00:01:57,990
68 here I mean 1968 which is when this language was released.

29
00:01:58,000 --> 00:02:01,990
ALGOL 68 is not a language you're ever going to need to know, but on the other

30
00:02:02,000 --> 00:02:04,990
hand you might want to know Python.

31
00:02:05,000 --> 00:02:11,990
So this is a one statement program written in Python 3 released in December

32
00:02:12,000 --> 00:02:17,990
2008, and this is a one statement program written in a language called Lua.

33
00:02:18,000 --> 00:02:22,990
Yes, this particular statement is the same in all of them and in a few

34
00:02:23,000 --> 00:02:24,990
more languages besides.

35
00:02:25,000 --> 00:02:28,990
You see many languages share a common history and they are often more alike

36
00:02:29,000 --> 00:02:30,990
than they are different.

37
00:02:31,000 --> 00:02:34,990
Now just because this statement is the same in these languages does not mean

38
00:02:35,000 --> 00:02:39,990
these languages are identical. Far from it, but there are often significant

39
00:02:40,000 --> 00:02:42,990
similarities between languages.

40
00:02:43,000 --> 00:02:46,990
Now, some languages do need a little more than one single statement to be

41
00:02:47,000 --> 00:02:48,990
considered a full program.

42
00:02:49,000 --> 00:02:52,990
Many languages like to be given explicit starting and ending points.

43
00:02:53,000 --> 00:02:58,990
An older version of ALGOL, ALGOL 60, was written in all caps and actually

44
00:02:59,000 --> 00:03:02,990
required the words BEGIN an END to mark out your program.

45
00:03:03,000 --> 00:03:10,990
Languages like C and other languages based on C like C#, C++ and Java, they

46
00:03:11,000 --> 00:03:15,990
require what can first seem like intimidating amounts of curly braces and

47
00:03:16,000 --> 00:03:21,990
weird esoteric keywords just to get something simple to happen like the words, Hello, world!

48
00:03:22,000 --> 00:03:26,990
Now you might think, okay so am I supposed to remember all of this to write just

49
00:03:27,000 --> 00:03:27,990
the simplest program?

50
00:03:28,000 --> 00:03:30,990
Well, no, not really.

51
00:03:31,000 --> 00:03:34,990
You see just because you can work in a plain text editor and it is useful from

52
00:03:35,000 --> 00:03:39,990
time to time, doesn't mean you have to and you probably won't want to.

53
00:03:40,000 --> 00:03:43,990
Because with a basic text editor you're completely on your own writing the stuff

54
00:03:44,000 --> 00:03:47,990
and there are other applications that can actually help you write this code and

55
00:03:48,000 --> 00:03:49,990
make your life easier.

56
00:03:50,000 --> 00:03:52,990
First we have programmer's text editors.

57
00:03:53,000 --> 00:03:57,990
These are plain text editors with some extra features added on and there are

58
00:03:58,000 --> 00:04:00,990
many of them available on every platform.

59
00:04:01,000 --> 00:04:02,990
Some are free and some are commercial.

60
00:04:03,000 --> 00:04:06,990
Typical features of these involved simple things like line numbers, more

61
00:04:07,000 --> 00:04:08,990
powerful Find and Replace.

62
00:04:09,000 --> 00:04:11,990
They often have color-coding.

63
00:04:12,000 --> 00:04:13,990
This is not the same as formatting.

64
00:04:14,000 --> 00:04:18,990
Color coding happens automatically and it helps you read and recognize different

65
00:04:19,000 --> 00:04:19,990
parts of the language.

66
00:04:20,000 --> 00:04:24,990
They often have syntax checking, kind of like spell checking in a word processor.

67
00:04:25,000 --> 00:04:28,990
Syntax checking will let you know if it finds something wrong with your code as

68
00:04:29,000 --> 00:04:29,990
you're actually typing it.

69
00:04:30,000 --> 00:04:34,990
Some of these text editors are oriented towards a particular language, say just

70
00:04:35,000 --> 00:04:38,990
Java, and some others might have support for several dozen languages.

71
00:04:39,000 --> 00:04:42,990
Now if you do any web development you might find that your chosen web

72
00:04:43,000 --> 00:04:46,990
development application is also a usable programmer's text editor.

73
00:04:47,000 --> 00:04:51,990
And then we have Integrated Development Environments or IDEs.

74
00:04:52,000 --> 00:04:56,990
These are large programs and include a good programmer's text editor, but

75
00:04:57,000 --> 00:05:00,990
usually add on a whole bunch of features for professional development.

76
00:05:01,000 --> 00:05:06,990
Examples of IDEs would be Apple's Xcode on the Mac or Microsoft's Visual Studio

77
00:05:07,000 --> 00:05:08,990
or Eclipse, which is a cross-platform.

78
00:05:09,000 --> 00:05:12,990
Now in this course we are not going to worry about IDEs. You'll get into those

79
00:05:13,000 --> 00:05:16,990
when you start concentrating on a particular area of development.

80
00:05:17,000 --> 00:05:21,990
So while you don't need a special program to write your code you'll probably

81
00:05:22,000 --> 00:05:22,990
end up wanting one.

82
00:05:23,000 --> 00:05:27,990
However, once we start to write this code we then need to understand how it will

83
00:05:28,000 --> 00:05:38,000
be turned into machine code so it can run on the computer itself.