زیرنویس فیلم پیام ریچارد استالمن به مناسبت روز آزادی نرم‌افزار برای ایران/English

از بنیاد دانش آزاد
پرش به: ناوبری، جستجو

1 00:00:00,000 --> 00:00:04,175 Welcome to Software Freedom Day,

2 00:00:04,425 --> 00:00:08,099 which is a part of the free software movement,

3 00:00:08,349 --> 00:00:11,945 the campaign for software that respects user's freedom.

4 00:00:12,195 --> 00:00:15,523 With software there are just two possibilities,

5 00:00:15,773 --> 00:00:22,251 either the users control the program or the program controls the users.

6 00:00:22,501 --> 00:00:27,865 The first case we call free software, free as in freedom,

7 00:00:28,115 --> 00:00:30,132 so that would be “azaad” (Persian: آزاد)

8 00:00:30,382 --> 00:00:35,739 Because in order for the users to have control of the program

9 00:00:35,989 --> 00:00:44,514 they need certain specific freedoms. There are 4 essential freedoms that make the criteria for free software:

10 00:00:44,764 --> 00:00:49,152 freedom zero is the freedom to run the program as you wish;

11 00:00:49,402 --> 00:00:55,045 freedom 1 is the freedom to study the source code of the program and

12 00:00:55,295 --> 00:00:59,064 change it so it does your computing the way you wish;

13 00:00:59,314 --> 00:01:03,113 freedom 2 is the freedom to help others

14 00:01:03,363 --> 00:01:07,863 that's the freedom to make and distribute exact copies

15 00:01:07,900 --> 00:01:11,446 of the program when you wish and freedom 3

16 00:01:11,696 --> 00:01:14,446 is the freedom to contribute to your community,

17 00:01:14,696 --> 00:01:17,611 that's the freedom to make and distribute copies of

18 00:01:17,861 --> 00:01:20,928 your modified versions when you wish.

19 00:01:21,178 --> 00:01:23,709 Freedom zero and one

20 00:01:23,959 --> 00:01:28,459 give users individual control, one user at a time,

21 00:01:28,709 --> 00:01:31,209 because through these freedoms

22 00:01:31,459 --> 00:01:34,164 you can make the program do what you wanted to do

23 00:01:34,164 --> 00:01:35,647 and then use it the way you wish.

24 00:01:35,897 --> 00:01:39,147 But individual freedom is not enough;

25 00:01:39,397 --> 00:01:43,910 first of all, most computer users don't know how to program!

26 00:01:44,160 --> 00:01:47,840 They don't have the skills to exercise freedom one,

27 00:01:48,090 --> 00:01:50,540 but even if you know how to program

28 00:01:50,790 --> 00:01:53,239 there is still so much software in the world

29 00:01:53,489 --> 00:01:56,989 you couldn't possibly study and master all that software;

30 00:01:56,992 --> 00:02:00,540 you couldn't possibly write all the changes you might want,

31 00:02:00,777 --> 00:02:03,340 that's more that one human being can do,

32 00:02:03,590 --> 00:02:06,463 so we need collective control as well.

33 00:02:06,713 --> 00:02:09,806 Collective control means that any group of people

34 00:02:09,806 --> 00:02:15,266 can work together and exercise control over their version of the program

35 00:02:15,266 --> 00:02:18,682 and it's up to you which group you participate in.

36 00:02:18,932 --> 00:02:25,309 So these freedoms two and three to redistribute exact copies

37 00:02:25,559 --> 00:02:27,184 and to distribute modified versions,

38 00:02:27,434 --> 00:02:30,150 they give us collective control.

39 00:02:30,400 --> 00:02:36,985 Of course the freedoms only give this result

40 00:02:37,235 --> 00:02:39,107 if they're adequate;

41 00:02:39,107 --> 00:02:44,510 in order to be adequate these freedoms have to apply to all areas of life

42 00:02:44,760 --> 00:02:46,238 including business by the way.

43 00:02:46,610 --> 00:02:48,981 Because business is a normal part of life

44 00:02:48,981 --> 00:02:53,419 and businessers should control their computing too.

45 00:02:53,419 --> 00:02:59,021 However note that of these four things

46 00:02:59,021 --> 00:03:00,333 that you're free to do,

47 00:03:00,612 --> 00:03:02,138 you don't have to do them,

48 00:03:02,138 --> 00:03:04,742 they're not obligatory they're not required.

49 00:03:05,322 --> 00:03:08,849 So for instance for freedom zero you're free

50 00:03:08,849 --> 00:03:10,445 to run the program as you wish

51 00:03:10,445 --> 00:03:12,532 but you're not required to,

52 00:03:12,532 --> 00:03:15,559 you could decide not to run the program,

53 00:03:15,559 --> 00:03:18,842 with freedom one you're free to study

54 00:03:18,842 --> 00:03:20,034 and change the source code

55 00:03:20,034 --> 00:03:21,417 but it's not required,

56 00:03:21,417 --> 00:03:23,107 you can use the program

57 00:03:23,107 --> 00:03:24,839 exactly the way you got it.

58 00:03:25,233 --> 00:03:28,534 With freedom two you're free to make copies

59 00:03:28,534 --> 00:03:29,985 and distribute them to others

60 00:03:29,985 --> 00:03:31,799 you're free to give them away,

61 00:03:31,799 --> 00:03:32,928 you're free to sell them

62 00:03:32,928 --> 00:03:34,452 but you don't have to.

63 00:03:35,034 --> 00:03:37,787 In any given occasion it's up to you

64 00:03:37,787 --> 00:03:39,422 whether to distribute the copy.

65 00:03:40,019 --> 00:03:42,104 And likewise with freedom three

66 00:03:42,104 --> 00:03:44,126 if you have made a modified version

67 00:03:44,126 --> 00:03:46,105 you're free to distribute copies of that

68 00:03:46,105 --> 00:03:47,681 but it's not required

69 00:03:47,681 --> 00:03:50,578 you can do that when you wish.

70 00:03:51,042 --> 00:03:54,743 But what happens if the program

71 00:03:54,743 --> 00:03:57,590 doesn't come with all of these freedoms?

72 00:03:57,590 --> 00:04:00,714 Then it's proprietary software,

73 00:04:00,714 --> 00:04:02,297 non-free software,

74 00:04:02,297 --> 00:04:05,227 user-subjugating software;

75 00:04:05,227 --> 00:04:08,513 because if the users don't control the program

76 00:04:08,513 --> 00:04:10,945 the program controls the users.

77 00:04:10,945 --> 00:04:14,939 And the owner controls the program,

78 00:04:15,403 --> 00:04:17,113 and through the program

79 00:04:17,113 --> 00:04:21,170 the owner exercises unjust power

80 00:04:21,170 --> 00:04:23,341 over the program's users.

81 00:04:23,341 --> 00:04:26,192 So every non-free program

82 00:04:26,192 --> 00:04:30,249 generates a system of unjust power

83 00:04:30,249 --> 00:04:34,800 and that's why non-free software should not exist.

84 00:04:34,800 --> 00:04:38,510 The aim of the free software movement

85 00:04:38,510 --> 00:04:40,843 is all software should be free

86 00:04:40,843 --> 00:04:45,566 so that all the users of software can be free.

87 00:04:46,169 --> 00:04:50,552 Our goal is to first escape from non-free software

88 00:04:50,552 --> 00:04:53,588 and then help everyone else escape

89 00:04:53,588 --> 00:04:57,640 until all users of software are free.

90 00:04:58,283 --> 00:05:02,145 The most important field for

91 00:05:02,145 --> 00:05:04,760 moving to free software is education.

92 00:05:05,314 --> 00:05:10,034 And this is because educational activities

93 00:05:10,034 --> 00:05:13,122 which includes all schools of all levels

94 00:05:13,122 --> 00:05:17,879 have a mission, a social mission

95 00:05:17,879 --> 00:05:20,895 and this is to educate good citizens

96 00:05:20,895 --> 00:05:25,635 of a strong capable cooperating independent

97 00:05:25,635 --> 00:05:27,202 and free society.

98 00:05:28,293 --> 00:05:31,463 And in the field of computing

99 00:05:31,463 --> 00:05:35,828 this means graduating people who are skilled

100 00:05:35,828 --> 00:05:39,900 in using free software or have become accustomed

101 00:05:39,900 --> 00:05:41,074 to using free software

102 00:05:41,074 --> 00:05:46,376 and thus are ready to participate enough free society

103 00:05:46,376 --> 00:05:47,461 in their computing.

104 00:05:48,580 --> 00:05:51,917 Teaching a non-free program is simply wrong

105 00:05:51,917 --> 00:05:55,069 because that means implanting dependence.

106 00:05:55,069 --> 00:05:58,180 Schools must never do that.

107 00:05:58,180 --> 00:06:02,731 But there are more reasons why educational activities

108 00:06:02,731 --> 00:06:05,170 must teach exclusively free software.

109 00:06:05,170 --> 00:06:08,333 For instance there is the education

110 00:06:08,333 --> 00:06:10,333 of the best programmers.

111 00:06:10,333 --> 00:06:13,584 Some people are natural born programmers,

112 00:06:13,584 --> 00:06:15,935 at the age of 10 to 13

113 00:06:15,935 --> 00:06:17,941 they become fascinating with programming

114 00:06:17,941 --> 00:06:22,643 and they want to learn how everything is done.

115 00:06:22,643 --> 00:06:24,384 If they use a program

116 00:06:24,384 --> 00:06:27,124 they want to know “how does it do this?”

117 00:06:27,124 --> 00:06:29,847 or when the student asks the teacher

118 00:06:29,847 --> 00:06:31,053 “how does it do this?”

119 00:06:31,053 --> 00:06:32,762 if the program is proprietary

120 00:06:32,762 --> 00:06:34,229 the teacher can only respond

121 00:06:34,229 --> 00:06:38,444 “I'm sorry, there is no way we can find out, it's a secret”

122 00:06:38,444 --> 00:06:41,541 which means education is not allowed.

123 00:06:41,541 --> 00:06:44,716 A proprietary program

124 00:06:44,716 --> 00:06:48,661 is knowledge withheld from the student,

125 00:06:48,661 --> 00:06:52,181 it's the enemy of the spirit of education

126 00:06:52,181 --> 00:06:55,818 and therefore must never be tolerated in a school.

127 00:06:55,818 --> 00:07:00,181 But if the program is free, the teacher can explain

128 00:07:00,181 --> 00:07:03,190 whatever he knows and then give the student

129 00:07:03,190 --> 00:07:08,180 a copy of the source code of the program saying read this

130 00:07:08,180 --> 00:07:10,101 and you'll understand everything.

131 00:07:10,101 --> 00:07:13,046 And those students will read it

132 00:07:13,046 --> 00:07:14,416 because they're fascinated

133 00:07:14,416 --> 00:07:16,583 and they yearn to understand everything.

134 00:07:17,511 --> 00:07:19,320 And the teacher can say to them:

135 00:07:19,320 --> 00:07:21,402 if you come across any point

136 00:07:21,402 --> 00:07:23,000 you can't figure out by yourself

137 00:07:23,000 --> 00:07:26,158 show it to me and we can figure it out together.

138 00:07:26,158 --> 00:07:31,835 And this way our natural-born-programmer learns a vital lesson:

139 00:07:31,835 --> 00:07:34,926 that piece of code is not clear,

140 00:07:34,926 --> 00:07:37,367 you shouldn't write it that way,

141 00:07:37,367 --> 00:07:40,244 that's an example of the way not to write code.

142 00:07:40,244 --> 00:07:44,200 And our natural-born-programmers need to learn that,

143 00:07:44,200 --> 00:07:47,482 because they need to develop into good programmers.

144 00:07:47,482 --> 00:07:49,819 And the way you learn to be a good programmer

145 00:07:49,819 --> 00:07:52,948 is to learn all the things that are not clear

146 00:07:52,948 --> 00:07:55,363 so that you won't write the code that way,

147 00:07:55,363 --> 00:07:57,447 and that way your code will be clear.

148 00:07:57,447 --> 00:08:00,782 How do you learn to write a good clear code?

149 00:08:00,782 --> 00:08:03,783 By reading lots of code and writing lots of code.

150 00:08:03,783 --> 00:08:06,488 Only free software gives the opportunity

151 00:08:06,488 --> 00:08:09,968 to read lots of code of large programs

152 00:08:09,968 --> 00:08:11,071 that we really use.

153 00:08:12,032 --> 00:08:14,423 Then you have to write lots of code,

154 00:08:14,423 --> 00:08:18,351 which means writing codes in large programs.

155 00:08:18,351 --> 00:08:22,783 But to do that you have to start small,

156 00:08:22,783 --> 00:08:26,556 which means you have to write small changes

157 00:08:26,556 --> 00:08:28,149 in large programs,

158 00:08:28,149 --> 00:08:31,365 that's how you start writing code for large programs.

159 00:08:31,365 --> 00:08:33,531 And once you get better

160 00:08:33,531 --> 00:08:35,002 you could write large changes

161 00:08:35,165 --> 00:08:36,782 and then maybe you could write

162 00:08:36,782 --> 00:08:38,624 an entire new large program

163 00:08:38,624 --> 00:08:42,003 starting from zero, although that's a rare thing,

164 00:08:42,003 --> 00:08:43,430 more often you are working

165 00:08:43,430 --> 00:08:45,823 on improving an existing large program.

166 00:08:45,823 --> 00:08:49,465 But only free software gives you the opportunity

167 00:08:49,465 --> 00:08:52,037 to write small or large changes

168 00:08:52,037 --> 00:08:54,989 in large programs that we really use.

169 00:08:54,989 --> 00:08:58,347 Any school can offer this opportunity

170 00:08:58,347 --> 00:09:01,203 but only if it's a free software school.

171 00:09:01,203 --> 00:09:05,499 However there's an even deeper reason

172 00:09:05,499 --> 00:09:08,590 for the sake of moral education,

173 00:09:08,590 --> 00:09:10,505 education in citizenship.

174 00:09:10,505 --> 00:09:13,344 It's not enough for schools

175 00:09:13,344 --> 00:09:16,247 to teach facts and methods.

176 00:09:16,247 --> 00:09:20,943 Schools have to teach the spirit of cooperation,

177 00:09:20,943 --> 00:09:22,930 the spirit of helping other people

178 00:09:22,930 --> 00:09:24,472 and the habit of doing so.

179 00:09:24,472 --> 00:09:29,723 So every class must have the following rule:

180 00:09:29,723 --> 00:09:33,258 “students, if you bring a program to class

181 00:09:33,258 --> 00:09:35,757 you may not keep it for yourself,

182 00:09:35,757 --> 00:09:38,449 you must share copies with everyone

183 00:09:38,449 --> 00:09:41,664 in the class including the source code

184 00:09:41,664 --> 00:09:44,453 in case there is someone here who wants to learn

185 00:09:44,453 --> 00:09:46,848 because this class in a place

186 00:09:46,848 --> 00:09:48,903 where we share our knowledge,

187 00:09:48,903 --> 00:09:52,252 therefore bringing non-free software

188 00:09:52,252 --> 00:09:54,232 to class is not permitted”

189 00:09:54,232 --> 00:09:58,649 the school must set a good example

190 00:09:58,649 --> 00:10:01,023 which means following it's own rule.

191 00:10:01,023 --> 00:10:04,480 It must bring only free software to class

192 00:10:04,480 --> 00:10:08,178 and share copies with everyone in the class.

193 00:10:08,178 --> 00:10:12,230 If you have any connection with a school,

194 00:10:12,230 --> 00:10:13,960 it's your mission,

195 00:10:13,960 --> 00:10:18,743 your responsibility, to campaign for that school

196 00:10:18,743 --> 00:10:21,135 to move to free software.

197 00:10:21,135 --> 00:10:26,443 Now, our community has been weakened, sad

198 00:10:26,443 --> 00:10:28,426 to say, in a number of ways.

199 00:10:28,426 --> 00:10:31,941 Because most of the users of

200 00:10:31,941 --> 00:10:34,495 the GNU+Linux operating system

201 00:10:34,495 --> 00:10:36,650 don't think about the issue

202 00:10:36,650 --> 00:10:37,920 and terms of freedom

203 00:10:37,920 --> 00:10:41,449 so they have been willing to throw away

204 00:10:41,449 --> 00:10:44,314 their freedom for mere convenience.

205 00:10:44,314 --> 00:10:46,880 You'll be fine for instance

206 00:10:46,880 --> 00:10:52,218 that there are over a thousand different distributions

207 00:10:52,218 --> 00:10:55,593 of the GNU+Linux system,

208 00:10:55,593 --> 00:10:58,780 most of them refer to the system

209 00:10:58,780 --> 00:11:00,458 as "Linux", which is not true,

210 00:11:00,458 --> 00:11:02,365 but more importantly

211 00:11:02,365 --> 00:11:07,235 most of them contain non-free programs as well

212 00:11:07,235 --> 00:11:11,029 and by offering the users non-free programs

213 00:11:11,029 --> 00:11:13,757 what is the message they convey?

214 00:11:13,757 --> 00:11:18,668 Their message is "convenience above freedom"

215 00:11:18,668 --> 00:11:22,282 and that message is going to lead people

216 00:11:22,282 --> 00:11:24,142 to surrender and lose their freedom,

217 00:11:24,142 --> 00:11:27,265 because the only way you keep your freedom

218 00:11:27,265 --> 00:11:29,599 is by fighting for it.

219 00:11:29,599 --> 00:11:36,280 So if you want to reach freedom is your computing

220 00:11:36,280 --> 00:11:43,072 you need to install a GNU/Linux distribution

221 00:11:43,072 --> 00:11:45,205 which is entirely free software

222 00:11:45,205 --> 00:11:47,078 and there are a few of them.

223 00:11:47,078 --> 00:11:52,375 You can find the list in gnu.org/distros/