Picture of author.
34+ Works 733 Membros 7 Críticas 2 Favorited

About the Author

Image credit: Chrys

Obras por Richard M. Stallman

GNU Emacs Manual (1992) 152 exemplares
Using and Porting GNU CC (1993) 30 exemplares
Free Software Free Society 3rd Edition (2015) — Autor — 9 exemplares
Bison: The Yacc - Compatible Parser Generator. (1988) — Autor — 5 exemplares
GNU Make Reference Manual (2015) 4 exemplares
Contra el copyright (2010) 4 exemplares
GNU Emacs 24.5 Reference Manual (2015) 3 exemplares
The Right to Read [short story] (1996) 2 exemplares

Associated Works

True Names and the Opening of the Cyberspace Frontier (2001) — Contribuidor — 556 exemplares
The New Media Reader (2003) — Contribuidor — 297 exemplares

Etiquetado

Conhecimento Comum

Membros

Críticas

This is a collection of essays and talks given by Stallman over many years. The book is divided into three sections (4 actually, but the 4th is just a reprint of the licences). Section one talks about free software and the gnu project. Section two talks about copyright, copyleft, and patents. Section three talks about freedom, society, and software.

This being a book of Stallman essays, there is much to agree with and much to disagree with. I agree that that sharing is good, that software is increasingly fundamental to society, that DRM is stupid and any given DRM scheme is bound to be defeated, that laws saying DRM cannot be circumvented are harmful and stupid, that copyright is getting way out of hand these days (remember, the fundamental point of copyright is to increase the common good. Money making and the "ownership" of ideas is only a means to an end.), and that most software patents are extremely stupid and should be destroyed.

I do not agree that software should inherently be free, that companies should not have the right to attempt their misguided DRM schemes, or that the name "free software" verses "open source" is such a big deal (although I do get why Stallman thinks it is).

I agree that sharing is good. I think that open source software is good for the software industry. People often go on about how open source software is not innovative and contributes nothing to the greater landscape. Even if that were true (and I do not think it is), it misses the point that open source software can drive innovation in the software it is copying from, because that software needs to justify the higher price that usually comes with proprietary software. I also agree that sharing is good because sharing ideas and sharing techniques is a much more efficient way to get progress. Helping your neighbor is a good thing. I agree that anyone who argues that copyleft licenses are unfair is an idiot.

I agree that software is increasingly fundamental to society. This point was probably more relevant 10, 20, 30 years ago. These days, it does not take much to realize that much of our fundamental infrastructure from financial institutions to voting, are at least partially dependent on software.

I agree that DRM is stupid and any given DRM scheme is bound to be defeated. DRM is stupid. DRM is trying to enforce a universal quantifier. Forall users, they cannot get around the DRM scheme. All that takes to upset a forall is a there exists. If anyone can circumvent the DRM, then the DRM scheme has failed overall.

I agree that laws saying DRM cannot be circumvented are harmful and stupid. For one thing, there are many legitimate reasons to circumvent DRM. DRM often takes away fair use rights. For another, laws such as the DMCA are often used anti-competitively. Finally, laws like the DMCA make a tool illegal when it is the behavior (copyright infringement) that is the problem.

I agree that copyright is getting way out of hand these days. Lifetime however many years it is these days does not provide incentive for people to make more. If fact, I would argue that it provides less incentive. It provides less incentive to the person who creates things because they do no have to necessarily create as much throughout their lifetime to make a living (that assumes the premise, probably false, that compensation and control are what drive creativity in the first place). It provides less incentive for others creating things because most creativity is based on borrowing ideas, especially ideas that still have relevant to other people. I will not even begin to rant about how it is not usually the artist who is receiving the bulk of the compensation anyway.

I agree that most software patents are extremely stupid and should be destroyed. Stallman makes the point that part of the problem is that software patents often apply to ideas that are really quite obvious (in the "there is tons of prior and contemporary art" sense, not in the "I could have thought of that" sense). Software patents also tend to be ridiculously general (this may be true of patents in other areas too). Finally, it is, in my opinion, legally kind of cheating to have the same software be covered by copyright and by patents. This does not really happen in any other area, and it is taking advantage of the fact that the "mechanics" of a program happen to be text and images.

I agree that sharing is good. Sharing ideas and sharing implementations is much more efficient than not doing so, and it is the nice thing to do. You learned how to share in preschool, why should you forget those lessons now?

I agree that anyone who argues that copyleft licenses are unfair is an idiot. If someone writes software, it is perfectly reasonable for them to say others have to make it free if they add to it. They should feel lucky that they have the opportunity to have their probably partially solved in the first place. If someone wants full ownership of the software, they can hire someone to rewrite it from scratch.

I do not agree that software should inherently be free. I agree that it is nice and wonderful and efficient and encourages more progress when software is free. However, I do not believe that software should always be free. Since it is perfectly possible to distribute software without source code, and since can provide some value, there is no reason to say that providing software without source code should be inherently wrong. Or, to put it more concisely, you might be able to convince me that voting software should be free and open, but you will not convince me that a sudoku game inherently should be.

I do not believe that companies should not have the right to attempt their misguided DRM schemes. This is similar to the previous point. I think DRM schemes are stupid, but I generally support people's ability to have the right to try stupid things as long as they do not cause physical harm to others. As long as people have the ability to choose not to use the DRM'ed products, and as long as people are not legally barred from trying to circumvent DRM, then companies can spend all the time and money that they wish on harebrained schemes.

I do not agree that the name "free software" verses "open source" is such a big deal. I understand Stallman's argument that "open source" is a term that is more friendly to businesses and that does not evoke the idea of freedom and that the free software movement is not just about better software, it is about freedom. However, I really do not think that most people who have not heard that argument before think about those things any more upon hearing the term "free software" than they do upon hearing the term "open source". So yes, fine points, but too subtle for most people, so not as big of a deal as Stallman thinks it is.
… (mais)
 
Assinalado
eri_kars | 2 outras críticas | Jul 10, 2022 |
Indeholder "Preface", "Distribution", "GNU GENERAL PUBLIC LICENCE", " Preamble", " TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION", " How to Apply These Terms to Your New Programs", "Introduction", "1 The Organization of the Screen", " 1.1 Point", " 1.2 The Echo Area", " 1.3 The Mode Line", "2 Characters, Keys and Commands", " 2.1 Keyboard Input", " 2.2 Keys", " 2.3 Keys and Commands", " 2.4 Character Set for Text", "3 Entering and Exiting Emacs", " 3.1 Exiting Emacs", "4 Basic Editing Commands", " 4.1 Inserting Text", " 4.2 Changing the Location of Point", " 4.3 Erasing Text", " 4.4 Files", " 4.5 Help", " 4.6 Blank Lines", " 4.7 Continuation Lines", " 4.8 Cursor Position Information", " 4.9 Numeric Arguments", "5 Undoing Changes", "6 The Minibuffer", " 6.1 Minibuffers for File Names", " 6.2 Editing in the Minibuffer", " 6.3 Completion", " 6.3.1 Completion Example", " 6.3.2 Completion Commands", " 6.3.3 Strict Completion", " 6.3.4 Completion Options", " 6.4 Minibuffer History", " 6.5 Repeating Minibuffer Commands", "7 Running Commands by Name", "8 Help", " 8.1 Documentation for a Key", " 8.2 Help by Command or Variable Name", " 8.3 Apropos", " 8.4 Keyword Search for Lisp Libraries", " 8.5 Other Help Commands", "9 The Mark and the Region", " 9.1 Setting the Mark", " 9.2 Transient Mark Mode", " 9.3 Operating on the Region", " 9.4 Commands to Mark Textual Objects", " 9.5 The Mark Ring", "10 Killing and Moving Text", " 10.1 Deletion and Killing", " 10.1.1 Deletion", " 10.1.2 Killing by Lines", " 10.1.3 Other Kill Commands", " 10.2 Yanking", " 10.2.1 The Kill Ring", " 10.2.2 Appending Kills", " 10.2.3 Yanking Earlier Kills", " 10.3 Accumulating Text", " 10.4 Rectangles", "11 Registers", " 11.1 Saving Positions in Registers", " 11.2 Saving Text in Registers", " 11.3 Saving Rectangles in Registers", " 11.4 Saving Window Configurations in Registers", " 11.5 Keeping File Names in Registers", "12 Controlling the Display", " 12.1 Scrolling", " 12.2 Horizontal Scrolling", " 12.3 Selective Display", " 12.4 European Character Set Display", " 12.5 Optional Display Features", " 12.6 Variables Controlling Display", "13 Searching and Replacement", " 13.1 Incremental Search", " 13.1.1 Slow Terminal Incremental Search", " 13.2 Non-Incremental Search", " 13.3 Word Search", " 13.4 Regular Expression Search", " 13.5 Syntax of Regular Expressions", " 13.6 Searching and Case", " 13.7 Replacement Commands", " 13.7.1 Unconditional Replacement", " 13.7.2 Regexp Replacement", " 13.7.3 Replace Commands and Case", " 13.7.4 Query Replace", " 13.8 Other Search-and-Loop Commands", "14 Commands for Fixing Typos", " 14.1 Killing Your Mistakes", " 14.2 Transposing Text", " 14.3 Case Conversion", " 14.4 Checking and Correcting Spelling", "15 File Handling", " 15.1 File Names", " 15.2 Visiting Files", " 15.3 Saving Files", " 15.3.1 Backup Files", " 15.3.1.1 Single or Numbered Backups", " 15.3.1.2 Automatic Deletion of Backups", " 15.3.1.3 Copying vs. Renaming", " 15.3.2 Protection Against Simultaneous Editing", " 15.4 Reverting a Buffer", " 15.5 Auto-Saving: Protection Against Disasters", " 15.5.1 Auto-Save Files", " 15.5.2 Controlling Auto-Saving", " 15.5.3 Recovering Data from Auto-Saves", " 15.6 File Name Aliases", " 15.7 Version Control", " 15.7.1 Concepts of Version Control", " 15.7.2 Editing with Version Control", " 15.7.3 Variables Affecting Check-in and Check-out", " 15.7.4 Log Entries", " 15.7.5 Change Logs and VC", " 15.7.6 Examining And Comparing Old Versions", " 15.7.7 VC Status Commands", " 15.7.8 Renaming VC Work Files and Master Files", " 15.7.9 Snapshots", " 15.7.9.1 Making and Using Snapshots", " 15.7.9.2 Snapshot Caveats", " 15.7.10 Inserting Version Control Headers", " 15.8 Listing a File Directory", " 15.9 Comparing Files", " 15.10 Miscellaneous File Operations", "16 Using Multiple Buffers", " 16.1 Creating and Selecting Buffers", " 16.2 Listing Existing Buffers", " 16.3 Miscellaneous Buffer Operations", " 16.4 Killing Buffers", " 16.5 Operating on Several Buffers", "17 Multiple Windows", " 17.1 Concepts of Emacs Windows", " 17.2 Splitting Windows", " 17.3 Using Other Windows", " 17.4 Displaying in Another Window", " 17.5 Deleting and Rearranging Windows ", "18 Frames and X Windows", " 18.1 Mouse Commands", " 18.2 Secondary Selection", " 18.3 Creating Frames", " 18.4 Setting Frame Parameters", " 18.5 Scroll Bars", " 18.6 Menu Bars", " 18.7 Using Multiple Typefaces", " 18.8 Modifying Faces", " 18.9 Miscellaneous X Window Features ", "19 Major Modes", " 19.1 How Major Modes are Chosen ", "20 Indentation", " 20.1 Indentation Commands and Techniques", " 20.2 Tab Stops", " 20.3 Tabs vs. Spaces", "21 Commands for Human Languages", " 21.1 Words", " 21.2 Sentences", " 21.3 Paragraphs", " 21.4 Pages", " 21.5 Filling Text", " 21.5.1 Auto Fill Mode", " 21.5.2 Explicit Fill Commands", " 21.5.3 The Fill Prefix", " 21.6 Case Conversion Commands", " 21.7 Text Mode", " 21.8 Outline Mode", " 21.8.1 Format of Outlines", " 21.8.2 Outline Motion Commands", " 21.8.3 Outline Visibility Commands", " 21.9 TeX Mode", " 21.9.1 TeX Editing Commands", " 21.9.2 LaTeX Editing Commands", " 21.9.3 TeX Printing Commands ", " 21.9.4 Unix TeX Distribution", " 21.10 Nroff Mode ", "22 Editing Programs", " 22.1 Major Modes for Programming Languages", " 22.2 Lists and Sexps", " 22.2 Lists and Sexp Commands", " 22.4 Defuns", " 22.5 Indentation for Programs", " 22.5.1 Basic Program Indentation Commands", " 22.5.2 Indenting Several Lines", " 22.5.3 Customizing Lisp Indentation", " 22.5.4 Customizing C Indentation", " 22.6 Automatic Display of Matching Parentheses", " 22.7 Manipulating Comments", " 22.7.1 Multiple Lines of Comments", " 22.7.2 Options Controlling Comments", " 22.8 Editing Without Unbalanced Parentheses", " 22.9 Completion for Lisp Symbols", " 22.10 Documentation Commands", " 22.11 Change Logs", " 22.12 Tag Tables", " 22.12.1 Source File Tag Syntax", " 22.12.2 Creating Tag Tables", " 22.12.3 Selecting a Tag Table", " 22.12.4 Finding a Tag", " 22.12.5 Searching and Replacing with Tag Tables", " 22.12.6 Stepping Through a Tag Table", " 22.12.7 Tag Table Inquiries", " 22.13 Merging Files with Emerge", " 22.13.1 Overview of Emerge", " 22.13.2 Submodes of Emerge", " 22.13.3 State of a Difference", " 22.13.4 Merge Commands", " 22.13.5 Exiting Emerge", " 22.13.6 Combining the Two Versions", " 22.13.7 Fine Points of Emerge ", " 22.14 C Mode", " 22.15 Fortran Mode", " 22.15.1 Motion Commands", " 22.15.2 Fortran Indentation", " 22.15.2.1 Fortran Indentation Commands", " 22.15.2.2 Continuation Lines", " 22.15.2.3 Line Numbers", " 22.15.2.4 Syntactic Conventions", " 22.15.2.5 Variables for Fortran Indentation ", " 22.15.3 Comments", " 22.15.4 Fortran Auto Fill Mode", " 22.15.5 Columns", " 22.15.6 Fortran Keyword Abbrevs ", " 22.16 Asm Mode", "23 Compiling and Testing Programs", " 23.1 Running "make", or Compilers Generally", " 23.2 Running Debuggers Under Emacs", " 23.2.1 Starting GUD", " 23.2.2 Debugger Operation", " 23.2.3 Commands of GUD", " 23.2.4 GUD Customization", " 23.3 Executing Lisp Expressions", " 23.4 Libraries of Lisp Code for Emacs", " 23.5 Evaluating Emacs-Lisp Expressions", " 23.6 Lisp Interaction Buffers", " 23.7 Running an External Lisp", "24 Abbrevs", " 24.1 Defining Abbrevs", " 24.2 Controlling Abbrev Expansion", " 24.3 Examining and Editing Abbrevs", " 24.4 Saving Abbrevs", " 24.5 Dynamic Abbrev Expansion ", "25 Editing Pictures", " 25.1 Basic Editing in Picture Mode", " 25.2 Controlling Motion after Insert", " 25.3 Picture Mode Tabs", " 25.4 Picture Mode Rectangle Commands ", "26 Sending Mail", " 26.1 The Format of the Mail Buffer", " 26.2 Mail Header Fields", " 26.3 Mail Aliases", " 26.4 Mail Mode", " 26.5 Distracting the NSA", "27 Reading Mail with Rmail", " 27.1 Scrolling Within a Message", " 27.2 Moving Among Messages", " 27.3 Deleting Messages", " 27.4 Rmail Files and Inboxes", " 27.5 Multiple Mail Files", " 27.6 Copying Messages Out to Files", " 27.7 Labels", " 27.8 Sending Replies", " 27.9 Summaries", " 27.9.1 Making Summaries", " 27.9.2 Editing in Summaries ", " 27.10 Editing Within a Message", " 27.11 Digest Messages", " 27.12 Converting an Rmail File to Inbox Format", " 27.13 Reading Rot13 Messages ", "28 Dired, the Directory Editor", " 28.1 Entering Dired", " 28.2 Commands in the Dired Buffer", " 28.3 Deleting Files with Dired", " 28.4 Visiting Files in Dired", " 28.5 Dired Marks vs. Flags", " 28.6 Operating on Files", " 28.7 Shell Commands in Dired", " 28.8 Transforming File Names in Dired", " 28.9 File Comparison with Dired", " 28.10 Subdirectories in Dired", " 28.11 Moving Over Subdirectories", " 28.12 Hiding Subdirectories", " 28.13 Updating the Dired Buffer", " 28.14 Dired and find ", "29 The Calendar and the Diary", " 29.1 Movement in the Calendar", " 29.1.1 Motion by Standard Lengths of Time", " 29.1.2 Beginning or End of Week, Month or Year", " 29.1.3 Specified Dates ", " 29.2 Scrolling in the Calendar", " 29.3 Counting Days", " 29.4 Miscellaneous Calendar Commands", " 29.5 Holidays", " 29.6 Times of Sunrise and Sunset", " 29.7 Phases of the Moon", " 29.8 Conversion To and From Other Calendars", " 29.8.1 Supported Calendar Systems", " 29.8.1 Converting To Other Calendars", " 29.8.1 Converting From Other Calendars", " 29.8.1 Converting from the Mayan Calendar ", " 29.9 The Diary", " 29.9.1 Commands Displaying Diary Entries", " 29.9.2 The Diary File", " 29.9.3 Date Formats", " 29.9.4 Commands to Add to the Diary", " 29.9.5 Special Diary Entries ", " 29.10 Appointments", " 29.11 Daylight Savings Time ", "30 Miscellaneous Commands", " 30.1 GNUS", " 30.1.1 GNUS Three Buffers", " 30.1.2 When GNUS Starts Up", " 30.1.3 Summary of GNUS Commands ", " 30.2 Sorting Text", " 30.3 Running Shell Commands from Emacs", " 30.3.1 Single Shell Commands", " 30.3.2 Interactive Inferior Shell", " 30.3.3 Shell Mode", " 30.3.4 Shell Command History", " 30.3.4.1 Shell History Ring", " 30.3.4.2 Shell History Copying", " 30.3.4.3 Shell History References ", " 30.3.5 Shell Mode Options", " 30.4 Narrowing", " 30.5 Hardcopy Output", " 30.6 Two-Column Editing", " 30.7 Editing Binary Files", " 30.8 Using Emacs as a Server", " 30.9 Recursive Editing Levels", " 30.10 Dissociated Press", " 30.11 Other Amusements ", " 30.12 Emulation", "31 Customization", " 31.1 Minor Modes", " 31.2 Variables", " 31.2.1 Examining and Setting Variables", " 31.2.2 Editing Variable Values", " 31.2.3 Hooks", " 31.2.4 Local Variables", " 31.2.5 Local Variables in Files ", " 31.3 Keyboard Macros", " 31.3.1 Basic Use", " 31.3.2 Naming and Saving Keyboard Macros", " 31.3.3 Executing Macros with Variations ", " 31.4 Customizing Key Bindings", " 31.4.1 Keymaps", " 31.4.2 Prefix Keymaps", " 31.4.3 Local Keymaps", " 31.4.4 Minibuffer Keymaps", " 31.4.5 Changing Key Bindings Interactively", " 31.4.6 Rebinding Keys in Your Init File", " 31.4.7 Rebinding Function Keys", " 31.4.8 Rebinding Mouse Buttons", " 31.4.9 Disabling Commands ", " 31.5 Keyboard Translations", " 31.6 The Syntax Table", " 31.7 The Init File, `~/.emacs'", " 31.7.1 Init File Syntax", " 31.7.2 Init File Examples", " 31.7.3 Terminal-specific Initialization", " 31.7.4 How Emacs Finds Your Init File ", "32 Correcting Mistakes (Yours or Emacs's)", " 32.1 Quitting and Aborting", " 32.2 Dealing with Emacs Trouble", " 32.2.1 If DEL Fails to Delete", " 32.2.2 Recursive Editing Levels", " 32.2.3 Garbage on the Screen", " 32.2.4 Garbage in the Text", " 32.2.5 Spontaneous Entry to Incremental Search", " 32.2.6 Emergency Escape", " 32.2.7 Help for Total Frustration ", " 32.3 Reporting Bugs", " 32.3.1 When Is There a Bug", " 32.3.2 Understanding Bug Reporting", " 32.3.3 Checklist for Bug Reports", " 32.3.4 Sending Patches for GNU Emacs ", " 32.4 How To Get Help with GNU Emacs ", "Appendix A Command Line Options and Arguments", " A.1 Ordinary Arguments", " A.2 Initial Options", " A.3 Command Argument Example", " A.4 Resuming Emacs with Arguments", " A.5 Specifying the Display Name", " A.6 Font Specification Options", " A.7 Window Color Options", " A.8 Options for Window Geometry", " A.9 Internal and External Borders", " A.10 Icons", " A.11 X Resources ", "Appendix B Emacs 18 Antinews", "The GNU Manifesto", " What's GNU? Gnu's Not Unix!", " Why I Must Write GNU", " Why GNU Will Be Compatible with Unix", " How GNU Will Be Available", " Why Many Other Programmers Want to Help", " How You Can Contribute", " Why All Computer Users Will Benefit", " Some Easily Rebutted Objections to GNU's Goals", "Glossary", "Key (Character) Index", "Command and Function Index", "Variable Index", "Concept Index".

Det her er Ninth Edition, Emacs Version 19.21. Find en nyere!
… (mais)
 
Assinalado
bnielsen | 1 outra crítica | Oct 26, 2019 |
While I cannot agree with his recommendation of a "software development tax" where the government could potentially pay the salary of free software developers, everything esle in here is fantastic.

His many arguments, even the one I disagreed with, are well thought out and well written. He makes the case not only for the development community but for the community of the whole. We are loosing our rights everyday to restrictive end user license agreements (EULA) Digital Restrictions Management (DRM) and the like from Governmetns, the media, and corporations. We need to be teh residence. The more of our life is tied to computers the less it matters who controls the state and the more it matters who controls our computers.

This collection is a few years old, and misses some of the developments like Android/Linux and Microsoft joining the Linux foundation, which make me fearful that the open source advocates have one and freedom has lost, but I think that is still open for debate. Highly recommend for all.
… (mais)
 
Assinalado
fulner | Feb 1, 2017 |
I didn't find the story itself to be particularly interesting/gripping. Basically the author just tells us what the main character is thinking. However the point of the story - restriction of access to reading material and the "big brother" information society that could be lurking in our future is of interest. The "Author's Note" provides relevant information and links.
 
Assinalado
PortiaLong | Oct 24, 2009 |

Listas

You May Also Like

Associated Authors

Estatísticas

Obras
34
Also by
2
Membros
733
Popularidade
#34,655
Avaliação
4.0
Críticas
7
ISBN
69
Línguas
3
Marcado como favorito
2

Tabelas & Gráficos